Gra*_*ich 2 python csv append pandas
我有大约10个CSV文件,我想附加到一个文件中。我的想法是将文件名分配给编号为data_files的文件,然后将它们附加到while循环中,但是我在将文件更新到循环中下一个编号为date_file的文件时遇到了麻烦。我不断收到与“ data_file不存在”和“无法连接'str'和'int'对象”相关的错误。我什至不确定这是否是解决我的问题的现实方法。任何帮助,将不胜感激。
import pandas as pd
path = '//pathname'
data_file1= path + 'filename1.csv'
data_file2= path + 'filename2.csv'
data_file3= path + 'filename3.csv'
data_file4= path + 'filename4.csv'
data_file5= path + 'filename5.csv'
data_file6= path + 'filename6.csv'
data_file7= path + 'filename7.csv'
df = pd.read_csv(data_file1)
x = 2
while x < 8:
data_file = 'data file' + str(x)
tmdDF = pd.read_csv(data_file)
df = df.append(tmpDF)
x += x + 1
Run Code Online (Sandbox Code Playgroud)
不太确定data_file在循环中构造该字符串方面要做什么。您不能使用变量名称字符串来寻址。另外,正如Paulo所述,您也没有正确地增加索引。请尝试以下代码,但请注意,仅出于串联csv文件的目的,您当然不需要熊猫。
import pandas
filenames = ["filename1.csv", "filename2.csv", ...] # Fill in remaining files.
df = pandas.DataFrame()
for filename in filenames:
df = df.append(pandas.read_csv(filename))
# df is now a dataframe of all the csv's in filenames appended together
Run Code Online (Sandbox Code Playgroud)