【问题标题】:ValueError: cannot set a row with mismatched columnsValueError:无法设置列不匹配的行
【发布时间】:2021-06-17 15:24:36
【问题描述】:

我正在尝试将下面的列表附加到空数据框的第一行。

to_append = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

df_length = len(df_b)
df_b.loc[df_length] = to_append

空数据框的列数多于列表可分配给的列数

0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16

当我使用上面的代码时,我得到一个错误

ValueError: cannot set a row with mismatched columns

如何附加列表以获得这样的结果?

    0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16
0   1   2   3   4   5   6   7   8   9   10

【问题讨论】:

标签: python pandas list dataframe


【解决方案1】:

设置

>>> df = pd.DataFrame(columns=range(17))                                                                                       
>>> df                                                                                                                         
Empty DataFrame
Columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
Index: []
>>> to_append = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 

解决方案

>>> df.append([to_append])                                                                                                     
   0  1  2  3  4  5  6  7  8   9   10   11   12   13   14   15   16
0  1  2  3  4  5  6  7  8  9  10  NaN  NaN  NaN  NaN  NaN  NaN  NaN

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    • 2022-06-13
    • 2012-09-11
    相关资源
    最近更新 更多