我需要将列表项列表逐行填充到已定义的数据框中。你能帮我怎么做吗
我真的很抱歉我改变了我的要求
例如:
list_item = [['1|x', '2|x', '3|-'],
['5|x', '6|-', '7|x'],
['9|x', '10|x', '11|-']]
预定义数据帧: df
Name Code City
Shiv Sh ALD
Kumar KR PJ
Ram RM KL
Shank SK RM
Jeet JT PKG
Atul AT FTP
Ganesh GS TL
Kishor KH KI
Gagan GN AK
最终输出:
df:
Name Code City Num Expr
Shiv Sh ALD 1 x
Kumar KR PJ 2 x
Ram RM KL 3 -
Shank SK RM 5 x
Jeet JT PKG 6 -
Atul AT FTP 7 x
Ganesh GS TL 9 x
Kishor KH KI 10 x
Gagan GN AK 11 x
您可以使用
np.ravel
:更新后的问题:
不太为人所知,但
pandas
实际上有一个内置的flatten
函数,用于展平任何嵌套级别的列表(或任何其他类似容器)flatten
返回一个生成器,因此我们需要将其包装在pd.Series()
中(将其包装在list()
中同样有效-任何将耗尽GerGenerator的操作)以检索所有值编辑:因为你已经改变了你的问题。只需使用
flatten
方法即可获得相同的结果: 我们将列表展平,对于每个项目,我们将拆分“|”上的字符串,以创建一个新的列表列表(这次正确组织)。我们可以直接将其分配给新列相关问题 更多 >
编程相关推荐