【发布时间】:2020-06-18 12:02:30
【问题描述】:
For循环解析具有相同标题的目录中的csv文件,并在每个循环文件后打印新列
从下面的代码可以看出,它垂直组合了一个目录中的所有文件。我希望它在每个文件之后水平组合以具有多行
import os
import pandas as pd
#RUN THIS AFTER MAKING ALL THE CSV FILEs
dfmaster = pd.DataFrame()
directory = "/content/drive/My Drive/"
for filename in os.listdir(directory):
fullpath = os.path.join(directory, filename)
if os.path.isfile(fullpath) and fullpath.endswith(".csv"):
dfchild = pd.read_csv(fullpath)
select_cols = ['var1', 'var2']
#define columns you want to explort
dfmaster = dfchild[select_cols]
#####Problem here, After each file print to two new columns I don't know what to input here
print(dfmaster.reset_index(drop=True))
dfmaster.to_csv("/content/drive/My Drive/Subsurface_A.csv", index=False)
所以总结:当前的 for 循环垂直组合列。我想学习如何水平地做到这一点,就像这是 excel 一样
而不是包含所有数据的 A B 列。我希望每个文件的 A B 列彼此相邻放置,以便拥有 A B C D E F G 列......
抱歉,我不懂编码术语。如果模组看到这个,请在必要时改写。
谢谢!
【问题讨论】:
标签: python python-3.x pandas csv for-loop