【问题标题】:Is it possible to concat a dictionary to an empty DataFrame?是否可以将字典连接到空的 DataFrame?
【发布时间】:2021-12-11 00:08:33
【问题描述】:

当我运行以下代码时:

import pandas as pd
data = {'age':{'sam': 1,
                'rye': 3,
                'lori':8,
                'chris':11,
                'sara':3}}
df = pd.DataFrame()
df = pd.concat([df, data])

我收到此错误:

TypeError: 无法连接类型为 '' 的对象;只有 Series 和 DataFrame obj 有效

我想知道这个操作是否可行,或者我做错了什么。

【问题讨论】:

  • 为什么要将 dict 连接到空数据帧?为什么不直接将 dict 转换为框架:pd.DataFrame(data)
  • 我有一个生成大约 10 个字典的循环,我想在每次迭代结束时将每个字典连接到相同的数据帧。

标签: python dictionary concatenation


【解决方案1】:

您只需先将data 变成DataFrame

>>> df = pd.concat([df, pd.DataFrame(data)])
>>> df
       age
chris   11
lori     8
rye      3
sam      1
sara     3

然后您可以在循环中将更多字典连接到df

【讨论】:

  • 谢谢,我没有意识到您无法按原样执行此操作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-29
  • 2015-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-09
  • 2021-03-31
相关资源
最近更新 更多