【问题标题】:How to initialize a pandas dataframe with empty lists如何使用空列表初始化熊猫数据框
【发布时间】:2021-10-07 19:31:46
【问题描述】:

我想实现以下为例:

ix A B
0 [] []
1 [] []

【问题讨论】:

  • 我想用这个entity_textitem_matrix = pd.DataFrame([], index=basket_sets.columns, columns=basket_sets.columns)实现它
  • @Mahrkeenerh nope 因为它不起作用

标签: python python-3.x pandas dataframe


【解决方案1】:

根据pandas documentation,您可以通过传递形状为 {'Column' : ['values']} 的字典来制作数据框。在这种情况下:

import pandas as pd

data = {'A': [[], []], 'B': [[], []]}
df = pd.DataFrame(data=data)

print(df)
#    A   B
# 0  []  []
# 1  []  []

【讨论】:

    【解决方案2】:

    如果您想以编程方式执行此操作,您可以使用:

    idx  = [0,1]
    cols = ['A', 'B']
    df = pd.DataFrame([[[] for i in range(len(cols))] for i in range(len(idx))],
                      index=idx, columns=cols,
                     )
    

    输出:

        A   B
    0  []  []
    1  []  []
    

    或者你可以作弊并利用 pandas str 方法:

    df = (pd.DataFrame('', index=idx, columns=cols)
            .apply(lambda c: c.str.split())
         )
    

    输出:

        A   B
    0  []  []
    1  []  []
    

    【讨论】:

      猜你喜欢
      • 2016-09-21
      • 1970-01-01
      • 2015-11-10
      • 1970-01-01
      • 2016-12-22
      • 2016-04-26
      • 2015-07-31
      • 1970-01-01
      • 2021-10-27
      相关资源
      最近更新 更多