如何在 FOR 循环中对 Python Pandas 列表中的元素执行字符串更改

Posted

技术标签:

【中文标题】如何在 FOR 循环中对 Python Pandas 列表中的元素执行字符串更改【英文标题】:How to perform a string change within a FOR loop to elements in a list in Python Pandas 【发布时间】:2020-07-06 01:32:58 【问题描述】:

所以我有以下代码:

x = 20
df = 

for i in range(1,x):
    df['df_'.format(i)] = a bunch of operations

list1 = []

for j in range(1,x):
    list1.append(str('df_'.format(j)))

var1 = list1
print(var1)

打印列表['df_1', 'df_2', 'df_3', ...]

我怎样才能让它打印列表[df['df_1'], df['df_2'], df['df_3'], ...]

【问题讨论】:

列表理解能解决问题吗? [df[i] for i in var1] 你为什么要这个?最终目标是什么,请创建一个示例数据框并向我们展示您到底想要做什么。换句话说,请创建一个mcve @dzakyputra 打印出实际的数据帧,而不是字符串列表 @anky_91 我还是 Python 新手……这是一段中间代码,之后我想使用这个引用数据帧的字符串列表来迭代和批量合并他们在一起。我只需要这段代码来生成格式为 [df['df_1'], df['df_2'], .......] 的正确类型的列表 【参考方案1】:

抱歉,我对区分不同的 py 对象有点困惑。

解决办法是修改上面这段代码:

for j in range(1,x):
    df_list = df['df_' + str(j)]
    list1.append(df_list)

var1 = list1
print(var1)

然后我在后续代码中引用 var1,它在对象 var1 中引用所有此类 df['df_(j)'] 数据帧直到 j。

【讨论】:

以上是关于如何在 FOR 循环中对 Python Pandas 列表中的元素执行字符串更改的主要内容,如果未能解决你的问题,请参考以下文章

如何在panda中对行和多列进行迭代?

使用 for 循环、if 循环和 zip 迭代 panda 数据帧和列表

python中for循环的用法

循环遍历多个 panda 数据帧以在 Python 中获取多个数据帧输出

For Loop - 将所有 excel 选项卡读入 Panda Df

如何在 python pandas 循环中对数据帧执行操作