Python将列添加到Pandas数据框中,这是另一列中的列表元素的计数

BigUglyDataScientist

我正在使用pymongo API从MongoDB数据库中提取数据,并将其插入到pandas数据框中。数据库中的某些字段包含诊断代码列表。其中大多数都有一个附带的“计数”字段,但没有。对于我计划定期对这些数据执行的分析而言,此计数将非常重要。数据框“ DF”如下所示:

                                        dxCodes   memberID  newDx
0          [4280, 4293, 4241, 4240, 4242, 4243]  856589080      0
1                                       [V7612]  906903383      0
2                           [4550, 4553, V1582]  837210554      0
3       [78791, 28860, V1582, 496, 25000, 4019]  935634391      0
4  [30500, 42731, 4280, 496, 59972, 4019, 3051]  929185103      0

我需要在中创建一个新列,其中包含诊断代码字段中包含的诊断代码计数。我到过互联网,但是我尝试过的所有解决方案都没有成功。我得到的最接近的是这个

DF['dxCount'] = len(DF['dxCodes'])

但是,我得到这个结果

                                        dxCodes   memberID  newDx  dxCount
0          [4280, 4293, 4241, 4240, 4242, 4243]  856589080      0   139360
1                                       [V7612]  906903383      0   139360
2                           [4550, 4553, V1582]  837210554      0   139360
3       [78791, 28860, V1582, 496, 25000, 4019]  935634391      0   139360
4  [30500, 42731, 4280, 496, 59972, 4019, 3051]  929185103      0   139360

dxCount列中显示的数字是数据帧中的行数,但我希望它在dxCodes字段中显示dx代码数,因此所需的结果将是

                                        dxCodes   memberID  newDx  dxCount  
0          [4280, 4293, 4241, 4240, 4242, 4243]  856589080      0   6
1                                       [V7612]  906903383      0   1
2                           [4550, 4553, V1582]  837210554      0   3
3       [78791, 28860, V1582, 496, 25000, 4019]  935634391      0   6
4  [30500, 42731, 4280, 496, 59972, 4019, 3051]  929185103      0   7

我在Python的旅程中走了很长一段路,但是这一天让我在数天之内将头撞墙了好几个小时。提前感谢你的帮助!

me

列表理解应该在这里起作用:

>>> df['dxCount'] = [len(c) for c in df['dxCodes']]

尽管也许更好的设计是将保留dxCodes在一个单独的数据帧中,以索引,memberID以便可以将它们存储为同构的字符串列。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

遍历一列并根据 PANDAS 数据框中另一列的值将值添加到列表

根据另一列的值将列添加到pandas数据框中

如何将另一列添加到我的数据框中,这是我的其他列“标签”的计数

将列添加到基于 R 中的字符列表对另一列中的值求和的数据框

如何将一列添加到基于另一列中的值向上计数的数据框中?

将 array.tolist() 添加到 Pandas 数据框中的一列后,获取每个单元格中存储一个元素的列表

根据另一列中的值将值添加到熊猫数据框的一列中

根据同一数据框另一列中的字符将文本列添加到数据框

Python Pandas根据在另一个数据框中的查找将列添加到数据框

如何根据另一列的时间将列添加到pandas数据框

将一个数据框中的一列元素添加到另一个数据框中另一列的元素

将现有数据框中的一列添加到每隔一列之间的另一列中

Python:将列添加到与另一列相关的数据框

R - 将一列数据添加到数据框中的现有列

如何将差异序列结果添加到熊猫数据框中的索引0的另一列?

根据一列中的值将行添加到数据框中

Pandas:如果字符串存在于几列中的任何一列中,我想对计数求和,并将此计数添加到具有搜索词的另一个数据框中

在另一列的列表中查找pandas数据框列的最接近元素

将一列数据框添加到R中的现有数据框列中?

将一列中的值添加到另一列中的值

根据行中的条件将一列添加到数据框

将每一列添加到新的数据框中

Pandas:将列列表添加到数据框中的新列

将具有取决于另一列的值的列添加到数据框

Python:将一列添加到具有不同长度的数据框中,重复添加的列直到填充数据框的长度

如何将列表中的元素添加到数据框作为保留顺序的列?

根据参考 [Excel] 将一列中的值添加到另一列

将一列的行添加到每行的另一列中

将新列添加到数据框中,其中新列是另一列与条件匹配的组中最小的日期值