我在向数据集添加新行时遇到问题。
这是示例 DataFrame
。
column_names = ['A','B','C']
items = [['a1','b1','c1'],['a2','b2']]
newDF = pd.DataFrame(items,columns=column_names)
print(newDF)
输出:
A B C
0 a1 b1 c1
1 a2 b2 None
由于缺少 c2,它被替换为 None
。这很好,符合预期。
现在,如果我继续向这个现有的 DataFrame
添加类似的行,如下所示:
newDF.loc[len(newDF)] = ['a3','b3']
我收到错误“无法设置列不匹配的行”。
我如何添加这个额外的行,以便它自动处理缺少的带有 None
或 NaN 的 c3?
最佳答案
一个选项是DataFrame.append
:
>>> new_row = ['a3', 'b3']
>>> newDF.append(pd.Series(new_row, index=newDF.columns[:len(new_row)]), ignore_index=True)
A B C
0 a1 b1 c1
1 a2 b2 None
2 a3 b3 NaN
关于 python Pandas "cannot set a row with mismatched columns"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53569997/