我有一个Pandas DataFrame列,其中包含一个列表中的多个列表。类似于这样:
df
col1
0 [[1,2], [2,3]]
1 [[a,b], [4,5], [x,y]]
2 [[6,7]]
我想将列表拆分为多列,因此输出应该是这样的:
col1 col2 col3
0 [1,2] [2,3]
1 [a,b] [4,5] [x,y]
2 [6,7]
请帮我做这件事。预先感谢
如果性能很重要,我认为需要DataFrame
承包商:
df = pd.DataFrame(df['col1'].values.tolist())
print (df)
0 1 2
0 [1, 2] [2, 3] None
1 [a, b] [4, 5] [x, y]
2 [6, 7] None None
如果需要删除 NaN
s - 缺失值首先添加删除:
df = pd.DataFrame(df['col1'].dropna().values.tolist())
您可以使用pd.Series.apply
:
df = pd.DataFrame({'col1': [[[1, 2], [2, 3]],
[['a', 'b'], [4, 5], ['x', 'y']],
[[6, 7]]]})
res = df['col1'].apply(pd.Series)
print(res)
0 1 2
0 [1, 2] [2, 3] NaN
1 [a, b] [4, 5] [x, y]
2 [6, 7] NaN NaN
如何将这列列表拆分为两列? 期望的结果:
我有一个非常简单的,其中每个单元格都包含一个列表。我想将列表中的每个元素拆分为它自己的列。我可以通过导出值,然后创建一个新的
理想情况下,我希望这些新列也被命名。
问题内容: 这个问题类似于将 列表切成子列表的列表 ,但是在我的情况下,我想包括每个先前子列表的最后一个元素,作为下一个子列表的第一个元素。并且必须考虑到最后一个元素必须始终至少包含两个元素。 例如: 大小为3的子列表的结果: 问题答案: 通过简单地缩短传递到范围的“ step”参数,可以轻松地将链接的答案中的列表理解用于支持重叠的块: 这个问题的其他访问者可能没有足够的精力来处理输入 列表 (可
我有: 我想要: 似乎在scala中我可以写:< code>df.select($"value。_1 ",$ "值。_2 ",$ "值。_3"),但这在python中是不可能的。 那么有没有好的办法呢?
问题内容: 我有一个如下所示的Pandas数据框: 我正在尝试将列表分成几列,如下所示: 没有值的列(因为列表没有那么长)用空白或NaN或其他内容填充。 我见过类似的回答这一个和其他类似的给它,而他们在长度相等的名单工作,他们都扔错误,当我尝试使用的长度不等的列表中的方法。有什么好办法吗? 问题答案: 尝试: 包括 我们可以通过以下方式确定所有格式: