【问题标题】:My pandas dataframe is not appending a dictionary [duplicate]我的熊猫数据框没有附加字典[重复]
【发布时间】:2021-10-01 07:30:15
【问题描述】:

我正在尝试用字典附加熊猫数据框。但是,它没有附加。当我打印它时,我得到一个空的数据框。请告诉我我的代码哪里出错了。

import pandas as pd

dfs = pd.DataFrame()

def tstfunc():
    dicts = {'a': "pavan", 'b':"sunder"}
    dfs.append(dicts, ignore_index=True)
    print(dfs)
    
tstfunc()

【问题讨论】:

  • 从接受的答案:“DataFrame.append 不是就地操作”-> dfs = dfs.append(dicts, ignore_index=True) 您可能最终会遇到范围问题,您还需要返回结果而不是而不是打印,因为没有就地追加、连接、合并或连接操作。

标签: python pandas dataframe


【解决方案1】:

试试:

def tstfunc():
    dfs = pd.DataFrame()
    dicts = {'a': "pavan", 'b':"sunder"}
    dfs=dfs.append(dicts, ignore_index=True)
    return dfs
    
tstfunc()

调用tstfunc()时输出:

    a       b
0   pavan   sunder

dfs = pd.DataFrame()
def tstfunc():
    dicts = {'a': "pavan", 'b':"sunder"}
    return dfs.append(dicts, ignore_index=True)
    
tstfunc()

调用tstfunc()时输出:

    a       b
0   pavan   sunder

【讨论】:

  • 出错,赋值前引用了局部变量
  • @Pavan 它在我这边工作正常..你能重新启动内核(如果你使用的是 jupyter)然后再次检查吗?
  • 我解决了..实际上我必须在函数中使用关键字 global 声明它..无论如何感谢您的建议
猜你喜欢
  • 2022-01-06
  • 2015-10-20
  • 2020-12-01
  • 2021-09-24
  • 2020-09-23
  • 2017-10-12
  • 2016-11-12
  • 2017-04-20
  • 1970-01-01
相关资源
最近更新 更多