python - 如何在熊猫中已创建的数据框中插入列表项列表?
问题描述
我需要将列表项列表逐行填充到已定义的数据框中。你能帮我怎么做吗?
我真的很抱歉我正在改变我的要求。
例子:
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
最终输出:
东风:
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
:
df["new"] = np.array(list_item).ravel()
print (df)
Name Code City new
0 Shiv Sh ALD 1
1 Kumar KR PJ 2
2 Ram RM KL 3
3 Shank SK RM 5
4 Jeet JT PKG 6
5 Atul AT FTP 7
6 Ganesh GS TL 9
7 Kishor KH KI 10
8 Gagan GN AK 11
更新后的问题:
list_item = [['1|x', '2|x', '3|-'],
['5|x', '6|-', '7|x'],
['9|x', '10|x', '11|-']]
s = pd.Series(np.array(list_item).ravel())
df[['Num', 'Expr']] = s.str.split('|', n=1, expand=True)
df
Name Code City Num Expr
0 Shiv Sh ALD 1 x
1 Kumar KR PJ 2 x
2 Ram RM KL 3 -
3 Shank SK RM 5 x
4 Jeet JT PKG 6 -
5 Atul AT FTP 7 x
6 Ganesh GS TL 9 x
7 Kishor KH KI 10 x
8 Gagan GN AK 11 -
推荐阅读
- opencv - FFMpeg v4l2m2m 绿色输出
- kubernetes - kubernetes pod 端口没有响应
- c# - 为什么添加亚克力效果后 TitleBar 标题不见了?
- laravel - 在 Laravel-update 之后尝试在 PaginatedResourceResponse.php 中获取非对象的属性“资源”
- sql-server - Django 将日期解析为 QuerySet 中的 dd-mm-yyyy
- apache - www.example.com 的主机名 SNI/HTTP 不匹配,但 example.com 不匹配
- javascript - Javascript 正则表达式,忽略一个特定字符
- c - 我们如何为方波转换器编写特定的 C 代码?或者这样做的逻辑是什么?
- networkx - 以编程方式将大量节点/边添加到 NetworkX 图的最快方法是什么?
- java - 对调用其他方法的方法使用 Mockito.when 方法作为回报