嵌套for循环熊猫数据框不会创建新列

Posted

技术标签:

【中文标题】嵌套for循环熊猫数据框不会创建新列【英文标题】:Nested for loop pandas dataframe does not create a new column 【发布时间】:2022-01-23 23:12:12 【问题描述】:

我有这个嵌套循环:

rolling=['10','20']

for i in range(len(ex)):
    for d in rolling:
       df = nested_df.loc[other_nested_df['pio'][i]:(other_nested_df['pio'][i]+10)].copy()
       ex.loc[i]['date_vert_'+str(d)=df['date'].iloc[-1]

循环没有给出任何错误,但我不明白为什么最后数据框ex 没有另外两列称为date_vert_10date_vert_20

【问题讨论】:

【参考方案1】:

ex.loc[i][...] 更改为ex.loc[i, ...]

rolling=['10','20']

for i in range(len(ex)):
    for d in rolling:
       df = nested_df.loc[other_nested_df['pio'][i]:(other_nested_df['pio'][i]+10)].copy()
       ex.loc[i, 'date_vert_'+str(d)=df['date'].iloc[-1]
       # ^^^^^^^^^^^ changed

【讨论】:

以上是关于嵌套for循环熊猫数据框不会创建新列的主要内容,如果未能解决你的问题,请参考以下文章

For循环子集化的熊猫数据框

我如何在python中使用for循环制作熊猫数据框对象

在 for 循环中创建和命名熊猫系列

如何在 for 循环中附加熊猫数据框中的行?

如何使用 for 循环过滤熊猫数据框中的观察结果?

如何从 for 循环构建和填充熊猫数据框? [复制]