python - Pandas 将列中的列表列表展平?

标签 python pandas

我正在尝试展平一个列表列表的列:

    var         var2
0   9122532.0   [[458182615.0], [79834910.0]]
1   79834910.0  [[458182615.0], [9122532.0]]
2   458182615.0 [[79834910.0], [9122532.0]]

我要:

    var         var2
0   9122532.0   [458182615.0, 79834910.0]
1   79834910.0  [458182615.0, 9122532.0]
2   458182615.0 [79834910.0, 9122532.0]

正在申请

sample8['var2'] = sample8['var2'].apply(chain.from_iterable).apply(list)

给我:

    var1        var2
0   9122532.0   [[, 4, 5, 8, 1, 8, 2, 6, 1, 5, ., 0, ], [, 7, ...
1   79834910.0  [[, 4, 5, 8, 1, 8, 2, 6, 1, 5, ., 0, ], [, 9, ...
2   458182615.0 [[, 7, 9, 8, 3, 4, 9, 1, 0, ., 0, ], [, 9, 1, ...

最佳答案

数据:

In [162]: df
Out[162]:
           var                           var2
0    9122532.0  [[458182615.0], [79834910.0]]
1   79834910.0   [[458182615.0], [9122532.0]]
2  458182615.0    [[79834910.0], [9122532.0]]

解决方案:使用np.ravel() :

In [163]: df['var2'] = df['var2'].apply(np.ravel)

In [164]: df
Out[164]:
           var                       var2
0    9122532.0  [458182615.0, 79834910.0]
1   79834910.0   [458182615.0, 9122532.0]
2  458182615.0    [79834910.0, 9122532.0]

关于python - Pandas 将列中的列表列表展平?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43216411/

相关文章:

Python正则表达式匹配字符

python - Tensorflow:通过协调器停止线程似乎不起作用?

python - TypeError : a bytes-like object is required, not 'str' when writing to a file

python - Pandas 合并具有不同名称的列并避免重复

python - "unstack"包含多行列表的 pandas 列

python - 使用 Multimechanize 测试 SOAP

python - 如果不满足条件,则返回该用户的数据,否则另一个查询

python - 绘制不同多类分类器的精度召回曲线

python - 根据 pandas 中的其他数据帧过滤一个数据帧

python - 模块未找到错误 : No module named 'pandas'