python - 从 2 个列表的笛卡尔积创建新的 DataFrame
问题描述
我想要在 Pandas 中实现以下目标:
a = [1,2,3,4]
b = ['a', 'b']
我可以创建一个像这样的 DataFrame:
column1 column2
'a' 1
'a' 2
'a' 3
'a' 4
'b' 1
'b' 2
'b' 3
'b' 4
解决方案
itertools.product
与DataFrame
构造函数一起使用:
a = [1, 2, 3, 4]
b = ['a', 'b']
from itertools import product
# pandas 0.24.0+
df = pd.DataFrame(product(b, a), columns=['column1', 'column2'])
# pandas below
# df = pd.DataFrame(list(product(b, a)), columns=['column1', 'column2'])
print (df)
column1 column2
0 a 1
1 a 2
2 a 3
3 a 4
4 b 1
5 b 2
6 b 3
7 b 4
推荐阅读
- c - CC1352P 启动板 SPI 接口不适用于我的应用
- php - 如何使用按日期范围的动态 mysql 查询从数据库中获取数据
- c# - 如何诊断 .net core ANCM 进程内启动失败
- browser - 如何更改 JMeter 执行目标浏览器?
- php - 如何在日期选择器中设置动态选定月份的第一个日期?
- r - Json文件格式到r中的csv
- javascript - 构建一个始终显示 6 或 9 次方的计算器
- python - 如何在 Matplotlib 中的主要图形上叠加三个单独的图形?
- javascript - 之前的 Javascript 对我不起作用
- python - 使用 seq2seq 构建聊天机器人并注意