python-3.x - 在数据框中循环应用程序以查找输出
问题描述
我有以下数据:
dict={'A':[1,2,3,4,5],'B':[10,20,233,29,2],'C':[10,20,3040,230,238]...................}
和
df= pd.Dataframe(dict)
以这种方式,我有 20 列,每列中有 5 个数字条目,我希望有一个新列,其中的值应如下所示:
0 A[0]*B[0]+A[0]*C[0] + A[0]*D[0].......
1 A[1]*B[1]+A[1]*C[1] + A[1]*D[1].......
2 A[2]*B[2]+A[2]*B[2] + A[2]*D[2].......
我尝试了以下方式,但手动无法放置 20 列,所以我想知道如何应用循环来获得所需的输出 :
lst=[]
for i in range(0,5):
j=df.A[i]*df.B[i]+ df.A[i]*df.C[i]+.......
lst.append(j)
i=i+1
解决方案
一个潜在的解决方案如下。我只采用您发布的示例,但可以正常工作。你的数据是 df
A B C
0 1 10 10
1 2 20 20
2 3 233 3040
3 4 29 230
4 5 2 238
D
您可以通过首先对数据框进行子集化来创建一个新列
add = df.loc[:, df.columns != 'A']
然后按以下方式对D
与列中的列的所有乘法求和:A
df['D'] = df['A']*add.sum(axis=1)
返回
A B C D
0 1 10 10 20
1 2 20 20 80
2 3 233 3040 9819
3 4 29 230 1036
4 5 2 238 1200
推荐阅读
- javascript - 如何解决未定义的 Promise 错误
- testing - 如何调试未捕获的异常:testcafe 报告的没有堆栈跟踪的错误
- ffmpeg - 提高视频大小 ffmpeg 网络摄像头流
- python - 我在 pygame 中遇到问题
- reactjs - 如何使数据标签适合条形图
- php - 将 dash 应用程序本地嵌入到 php 站点中
- database - DB2 恢复找不到 DB2REMOTE 路径
- java - 如何使用子实体-Spring数据JPA检索父实体
- .net - 将 BBcode 转换为 Json 或 xml
- azure - 如何从 Azure 文件共享中删除所有文件?