我有多个像这样的顺序数据帧:

df1 = pd.DataFrame( [['tom', 10], ['nick', 15], ['juli', 14]] ,  columns = ['Name', 'Age'])
df2 = pd.DataFrame([['tom', 10], ['nick', 15], ['juli', 14]] ,  columns = ['Name', 'Age'])
df3 = pd.DataFrame([['tom', 10], ['nick', 15], ['juli', 14]] ,  columns = ['Name', 'Age'])
df4 = pd.DataFrame([['tom', 10], ['nick', 15], ['juli', 14]] ,  columns = ['Name', 'Age'])

我需要创建一个 for 循环来 append 它们并获取一个新的数据框。
我尝试了下面的代码,但它不起作用,因为 python 将 df1 识别为字符串。
tempdf = df1
for i in range(2,4):
     tempdf = tempdf.append(("df"+str(i)))
     print(tempdf)

如何让 python 将它们识别为我创建的数据框对象?

最佳答案

您正在朝着正确的方向前进,只需使用 eval :

tempdf = df1
for i in range(2,4):
     tempdf = tempdf.append(eval("df"+str(i)))
     print(tempdf)

注意:使用 eval 可以运行任意代码,使用它被认为是一种不好的做法。如果可能,请尝试使用其他方式。

关于python - 如何在python中 append 具有相同前缀的多个数据帧,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55565758/

10-11 20:31