大熊猫:将100多个变量融合到100多个新数据框中

js3933

对于stackoverflow来说还很新,如果格式看起来很奇怪,请忍受。

我有一组包含100多个数据的大型数据,其结构如下:

countrya countryb年变量1变量2 ...... varaible100

我想将100个变量分成100个新的数据帧,然后将它们保存到csvs中。

下面是我用于创建1个新csv的代码。

dfm1=pd.melt(df, id_vars=['countrya','countryb','year'], value_vars=['variable1'],
         value_name='variable1')
dfm1.drop('variable',axis=1)
dfm1.to_csv('newdf1.csv')

我如何使过程自动化?谢谢!

jsmart

这是一种方法。首先,创建数据框。

import pandas as pd

df = pd.DataFrame({
    'country_a': [1, 2, 3],
    'country_b': [4, 5, 6],
    'year': [2018, 2019, 2020],
    'var_a': ['a', 'b', 'c'],
    'var_b': ['x', 'y', 'z']
})

print(df)
   country_a  country_b  year var_a var_b
0          1          4  2018     a     x
1          2          5  2019     b     y
2          3          6  2020     c     z

其次,使用您的列名遍历字段。

base_fields = df.columns[:3].to_list()    # columns in every file
var_fields = df.columns[3:]               # var_a, var_b, ...

for var_field in var_fields:
    file_name = f'{var_field}.csv'
    with open(file_name, 'wt') as handle:
        fields = base_fields + [var_field]
        df.loc[:, fields].to_csv(handle)
        
        print(f'wrote {fields} to {file_name}')


wrote ['country_a', 'country_b', 'year', 'var_a'] to var_a.csv
wrote ['country_a', 'country_b', 'year', 'var_b'] to var_b.csv
                                          ^              ^
                                          last field and file name change

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将数据框分为两组时,您是否可以有多个变量贡献因素?大熊猫

大熊猫,组合多个数据框

大熊猫枢轴数据框与多个groupby

大熊猫:填充多个空白数据框

大熊猫:将CSV数据从单个列重新格式化为多个新列

大熊猫:从基于多个列的数据框中删除观察结果

从具有多个日期/价格列的数据框中以大熊猫创建面板

大熊猫数据框中的变量移位

将大熊猫中的CSV文件导入大熊猫数据框

从多个特定日期选择大熊猫中的数据

大熊猫基于重复的索引数据框创建多个数据框

以长格式将多个词典组合到一个熊猫数据框中

用新数据追加大熊猫数据框

大熊猫:从数据框返回行,其中列的多个子集不为零

大熊猫:基于多个列对数据框进行排序

大熊猫:连接来自多个数据框,数组的信息

大熊猫将带有元组的数据框列扩展为多个列和行

大熊猫应用于数据框列以返回带有后缀的多个列

大熊猫,使用pd.to_hdf将多个数据集存储在h5文件中

大熊猫:根据阈值将数据帧分为多个数据帧

大熊猫从多个列中找到最近的变量索引

大熊猫:根据一列中的相似值,使用多个数据框中的值填充数据框中的空列

大熊猫:根据列名称将循环中的值映射到新数据框

大熊猫将数据从多个列重塑为单个列

如何提取大熊猫数据帧多个号码

如何将大熊猫分为多个分组依据?

基于2个变量约束计算大熊猫数据框中的滚动总和

大熊猫:根据多个条件计算新列中的新值,适用于多个列而不循环

在多个数据框中使用重命名功能遍历大熊猫数据框的字典以重命名列