python - Pandas:从 DataFrame 中的列表中获取值

标签 python list pandas

从我的一个脚本中,我最终得到了 Pandas 中的一个大数据框 其中一列看起来像这样

13      [1705916]
14    [116242799]
15     [17865718]
...
9551      [74736013]
9553              []
9620      [92090990]
9666        [113455]
9667     [327478610]
9733      [52782791]
9838              []
9951     [229462842]
9952              []
10070             []

当我输入(df.column_of_interest)时 我回来<class 'pandas.core.series.Series'>.

所以我的问题是,是否可以从数据框中的列表中提取数据,同时保留列表中具有空值的行?

预期输出:

13      1705916
14    116242799
15     17865718
...
9551      74736013
9553              
9620      92090990
9666        113455
9667     327478610
9733      52782791
9838              
9951     229462842
9952              
10070             

最佳答案

如果该列当前是整数列表,那么您可以使用 series.applystr.join() 来获得您想要的内容。示例-

In [42]: df = pd.DataFrame([[1,[2]],[2,[3]],[3,[]],[4,[5,6]]], columns=['A','B'])

In [43]: df
Out[43]:
   A       B
0  1     [2]
1  2     [3]
2  3      []
3  4  [5, 6]

In [44]: df['B'] = df['B'].apply(lambda x:','.join([str(i) for i in x]))

In [45]: df
Out[45]:
   A    B
0  1    2
1  2    3
2  3
3  4  5,6

关于python - Pandas:从 DataFrame 中的列表中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32836197/

相关文章:

python - 如何在postgreSQL中添加自动增量?

python - 从稀疏日期时间索引获取范围

python - 在 pandas multiindex 中填充 "blank"值以访问较低级别的索引

python - 在python中合并具有不同长度和列的数据帧列表

python - 重用 psycopg2.execute 中的参数

python - “int”对象不可下标

python - 如何在Python中对列表中的词频进行排序(但不是全部打印出来)

python - 将字典值(数组)转换为列表

Python 没有读入正确数量的列

list - Groovy 方法从列表中获取随机元素