应用包含多个数据帧的函数的最快方法

2024-07-03 06:59:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在寻找改进我的代码,但我没有找到解决问题的任何线索。 我有两个数据帧(假设A和B)具有相同的行和列数。你知道吗

我想创建第三个数据帧C,它将基于B[x,y]元素转换每个a[x,y]元素。你知道吗

实际上,我用2个循环执行操作,一个用于x,一个用于y维度:

import pandas

A=pandas.DataFrame([["dataA1","dataA2","dataA3"],["dataA4","dataA5","dataA6"]])
B=pandas.DataFrame([["dataB1","dataB2","dataB3"],["dataB4","dataB5","dataB6"]])
Result=pandas.DataFrame([["","",""],["","",""]])

def mycomplexfunction(x,y):
    return str.upper(x)+str.lower(y)

for indexLine in range(0,2):
    for indexColumn in range(0,3):
        Result.loc[indexLine,indexColumn]=mycomplexfunction(A.loc[indexLine,indexColumn],B.loc[indexLine,indexColumn])

print(Result)

              0             1             2
0  DATAA1datab1  DATAA2datab2  DATAA3datab3
1  DATAA4datab4  DATAA5datab5  DATAA6datab6

但我正在寻找一种更优雅、更快速的方法,通过使用数据帧函数直接实现这一点。你知道吗

你知道吗? 谢谢你


Tags: 数据代码in元素dataframepandasforrange