【问题标题】:Convert dictionary comprehension to python dataframe将字典理解转换为 python 数据框
【发布时间】:2021-09-29 11:54:27
【问题描述】:

输入:我们有一个这种形式的字典,其中包含更多数据

d = {
ag : ID name num 
0  id1  a  10
1  id2  s   7
2  id3  d   2,

rp : ID name num 
0  id4  f  13
1  id1  n  11
2  id8  p   4
}

输出:我想将所有这些放入单个数据帧中

   ID name num 
0  id1  a  10
1  id2  s   7
2  id3  d   2 
3  id4  f  13
4  id1  n  11
5  id8  p   4

代码:我试过了,但没有得到想要的输出

df = pd.concat({k: pd.Series(v) for k, v in d.items()}).reset_index()
df.columns = ['ID', 'name','num']
df

【问题讨论】:

    标签: python pandas dataframe dictionary dictionary-comprehension


    【解决方案1】:

    使用pd.concat:

    df = pd.concat(d.values(), ignore_index=True)
    
    >>> df
        ID name  num
    0  id1    a   10
    1  id2    s    7
    2  id3    d    2
    3  id4    f   13
    4  id1    n   11
    5  id8    p    4
    

    【讨论】:

    • 还有其他方法吗。我不想连接
    • 为什么 'concat' 是个问题?你有什么问题吗?
    【解决方案2】:

    这行得通吗?

    import pandas as pd
    
    d = {
    ag : ID name num 
    0  id1  a  10
    1  id2  s   7
    2  id3  d   2,
    
    rp : ID name num 
    0  id4  f  13
    1  id1  n  11
    2  id8  p   4
    }
    
    df = pd.concat(d.values(), ignore_index=True)
    

    您要连接的数据框是字典的值,因此您可以将d.values() 直接传递给pd.concat()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-12
      • 1970-01-01
      • 2022-07-05
      • 2019-10-19
      • 2016-10-12
      • 1970-01-01
      相关资源
      最近更新 更多