我是Python的新手。我在Anaconda Spyder IDE中将python 3用于一个简单的机器学习项目。 我试图输入一个csv文件名,并使用for循环将它们分别添加到熊猫数据框中:
for i in range (var):
name = input ('CSV file name: ')
data = pd.read_csv (name)
stocks = pd.DataFrame ({name: data ['Column name']})
问题是,for循环仅适用于第一行。接连输入文件名一次“ var”次,然后仅读取最后一个文件。 为什么for循环像这样工作?我想念什么?
答案 0 :(得分:0)
您将在循环的每次迭代中创建一个新的数据框。相反,Pandas方法as recommended in the docs是从一系列可迭代数据中构造一个数据框:
d = {}
for i in range(var):
name = input('CSV file name: ')
data = pd.read_csv(name)
d[name] = data['Column name']
stocks = pd.concat(d.values(), axis=1, keys=d)