python - 如何使用 python 从不同大小的列表中附加熊猫数据框?
问题描述
我想根据下图从不同大小的列表中创建熊猫数据框:
以下是我的清单:
A=[1,2,3]
B=[1,2,3,4,5,6]
C=[1,2,3,4,5,6,7,8,9,10,11,12]
下面是我的python代码:
import pandas as pd
A=[1,2,3]
B=[1,2,3,4,5,6]
C=[1,2,3,4,5,6,7,8,9,10,11,12]
lenA = len(A)
lenB = len(B)
lenC = len(C)
df = pd.DataFrame(columns=['A', 'B','C'])
count1=0
count2=0
for i,v1 in enumerate(A):
count1+=count1+i
for j,v2 in enumerate(B):
for k, v3 in enumerate(C):
count2 += count2 + j
if(count1<1):
if (count2 < 2):
df = df.append({'A': v1, 'B': v2,'C':v3}, ignore_index=True)
else:
df = df.append({'A': v1, 'B': v2,'C':v3}, ignore_index=True)
print(df)
但我无法获得预期的输出。指导我使用 A、B 和 C 列表获取图像中的输出。提前致谢。
解决方案
如果您确定它可以被和lenC
整除,那么您可以使用:lenA
lenB
np.repeat
pd.DataFrame({
'A': np.repeat(A, lenC//lenA),
'B': np.repeat(B, lenC//lenB),
'C': C
})
输出:
A B C
0 1 1 1
1 1 1 2
2 1 2 3
3 1 2 4
4 2 3 5
5 2 3 6
6 2 4 7
7 2 4 8
8 3 5 9
9 3 5 10
10 3 6 11
11 3 6 12
推荐阅读
- javascript - 使用 node.js 从本地服务器检索响应数据
- three.js - THREE.js 添加子弹作为精灵并单独旋转每个
- java - gradle 4.9 - gradlew 和 java 10 仍然得到:无法从 '10' 确定 java 版本
- angularjs - angularjs复选框控制台中的响应不正确
- tensorflow - ValueError:使用序列设置数组元素。(TensorFlow) 成本函数
- html - 改变html元素的位置?
- python - 在扫描操作期间为 dynamodb 更新 STS 凭据
- r - 创建饼图 - 缺少参数“FUN”,没有默认值
- android - 这是检查系统上是否存在指南针传感器的正确方法吗?
- javafx - JavaFX 3D - 场景相机问题、子场景错误和网格视图不可见