【问题标题】:Add prefix / suffix to dataframe name or pass 'parameter' into dataframe name in python将前缀/后缀添加到数据框名称或将“参数”传递给 python 中的数据框名称
【发布时间】:2013-11-27 08:40:25
【问题描述】:

如何在 python 中传递参数以每次创建新的数据框:

import numpy as np

for i in range(10):
    df = DataFrame(np.random.rand(10, 3), columns=list('abc'))
    print i , df

这每次都会给我一个不同的数据帧 df,但我希望我的 df 输出命名为数据帧:

df1 , df2, df3 , df4 ..

================================================

import numpy as np
name = ['one','two','three']
for i in range(3):
    name_df = DataFrame(np.random.rand(10, 3), columns=list('abc'))
    print i , name_df

第二个例子我希望我的数据框名称是

one, two, three

================================================ =

这里是函数

def data(t):
    df_%s , %t = DataFrame(np.random.rand(10, 3), columns=list('abc'))
    print df_%s , %t
data('a')
data('b')

在函数中我想获取名为的输出数据框:

df_a , df_b

【问题讨论】:

  • 只需使用 DataFrames {'one': <...>, 'two': <...>} 创建字典或使用 DataFrames 列出

标签: python pandas dataframe


【解决方案1】:

我不知道你怎么能完全按照你提到的那样命名,但你可以像这样创建数据框字典:

>>> df={}
>>> for i in range(5):
    df[str(i)] = pd.DataFrame(np.random.rand(10, 3), columns=list('abc'))

并以df['0'],df['1'], etc. 的身份访问它们

如果你必须要这样命名,你可以使用这个,

for i in range(5):
    vars()['df_' +str(i)] = pd.DataFrame(np.random.rand(10, 3), columns=list('abc'))

如果您需要使用函数设置名称,则只能使用该函数,因为它将是一个局部变量。在这种情况下,您可以使用 dict one。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-14
    • 2019-06-03
    • 1970-01-01
    • 1970-01-01
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多