python - 将相同的操作应用于不同的数据帧

标签 python function pandas anonymous

找不到关于这是 python 的任何信息... 我一直在为一些机器学习项目处理三个不同的数据集,对于不同数据框架上的相同操作,以完全相同的方式输入相同的命令是一项艰巨的任务……它是这样开始的:

aviva =  pd.read_csv('data/LON_AV_.csv', parse_dates=['Date'], index_col='Date', date_parser=dateparse )
admiral= pd.read_csv('data/LON_ADM.csv', parse_dates=['Date'], index_col='Date', date_parser=dateparse )
three =  pd.read_csv('data/LON_III.csv', parse_dates=['Date'], index_col='Date', date_parser=dateparse )

在中间有许多命令应用于每个相同的数据帧

并以此结束:

three.to_csv('three_x.csv')
three_label.to_csv('three_y.csv')

admiral.to_csv('admiral_x.csv')
admiral_label.to_csv('admiral_y.csv')

aviva.to_csv('aviva_x.csv')
aviva_label.to_csv('aviva_y.csv')

我想问你们,你们有什么办法可以加快这个过程,这样我就不必一直重复这样的代码了吗? 谢谢你们,祝你们有美好的一天

最佳答案

代替三个 DataFrame,avivaadmiralthree,使用一个 dict 和相同的键映射到 DataFrame 的名称:

dfs = dict()
for filename, name in [('LON_AV_.csv', 'aviva'), 
                       ('LON_ADM.csv', 'admiral'), 
                       ('LON_III.csv', 'three')]:
    dfs[name] = pd.read_csv('data/{}'.format(filename), parse_dates=['Date'], 
                            index_col='Date', date_parser=dateparse)

    ...

    dfs[name].to_csv('{}_x.csv'.format(name))
    label[name].to_csv('{}_y.csv'.format(name))

关于python - 将相同的操作应用于不同的数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38159342/

相关文章:

javascript - 如果我们从函数构造函数创建一个名为 'a' 的对象,那么为什么 'a' 不是 Function 的实例?

python - 重新采样 Pandas 数据框并合并列中的字符串

python - Opencv无法获得最高强度部分的ROI

python - 在 Hadoop Streaming 作业中写入 Parquet 输出

c++ - 当您调用方法/函数时,汇编语言会发生什么?

python - Pandas 仅当后面一行有值时才填充 na

python - KeyError 更改数据框中的列

Python:如何在单元( Nose )测试期间忽略装饰器?

python - 我从哪里开始寻找 python 中的图像匹配库?

javascript - 函数前的感叹号有什么作用?