我有一个csv文件的数据集,其中有两列:波长和吸光度值。
我想在循环中进行一些统计分析,循环包含一组文件,例如具有标准偏差等的平均吸光度文件。
body
我的问题是如何从每个文件中“连接”'Abs'列,然后对它们进行操作,创建一个单独的,均值/中值?
答案 0 :(得分:1)
首先创建所有DataFrame的列表 - 按usecols
中的参数read_csv
过滤列,也可省略delimiter=','
,因为默认参数:
dfs = []
for m in range(len(files)):
df = pd.read_csv(mypath + files[m],
skiprows=1,
usecols = ['Wavelength (nm)', 'Abs']) # usecols = ['Abs'] for filter Abs
dfs.append(df)
替代:
dfs = [pd.read_csv(mypath + files[m], skiprows=1, usecols = ['Wavelength (nm)', 'Abs']) for m in range(len(files))]
最后concat
在一起:
df = pd.concat(dfs, ignore_index=True)