我想将多个DataFrame连接在一起而不在concat函数中列出所有名称。我已经以字符串元素列表的形式获得的数据帧名称列表。无论如何我可以把它传递给concat函数吗?
df_1 = pandas.read_csv('some_file_1')
df_2 = pandas.read_csv('some_file_2')
df_3 = pandas.read_csv('some_file_3')
some_list = ['df_1','df_2','df_3']
pandas.concat(some_list)
你可以做:
import pandas as pd
import numpy as np
df1 = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
df2 = pd.DataFrame(np.random.randint(0,50,size=(100, 4)), columns=list('ABCD'))
df3 = pd.DataFrame(np.random.randint(0,5,size=(100, 4)), columns=list('ABCD'))
to_concat = [ "df1", "df2", "df3" ]
df = pd.concat(map(lambda z: eval(z),to_concat))
print(df)