如何在 pandas python 中填充一行

Posted

技术标签:

【中文标题】如何在 pandas python 中填充一行【英文标题】:How does one populate a row in pandas python 【发布时间】:2017-02-12 12:23:33 【问题描述】:

我已经在 python 中初始化了一个数据框来模拟一个矩阵

 llist = ["this", "is", "a","sentence"]
 df = pd.DataFrame(columns = llist, index = llist)

现在我想填充一行如下

 test = [1,0,0,0]
 df.iloc[[1]] = test

这会引发以下错误

ValueError: 无法使用长度与值不同的类似列表的索引器进行设置

当我将值设置如下时,它会使用相同的值填充行

  test = [1]
  df.iloc[[1]] = test

谁能告诉我为什么会发生这种情况以及用不同值列表填充行的最有效方法?

【问题讨论】:

【参考方案1】:

我认为你需要删除一个[]

test = [1,0,0,0]
df.iloc[1] = test

print (df) 
         this   is    a sentence
this      NaN  NaN  NaN      NaN
is          1    0    0        0
a         NaN  NaN  NaN      NaN
sentence  NaN  NaN  NaN      NaN

【讨论】:

以上是关于如何在 pandas python 中填充一行的主要内容,如果未能解决你的问题,请参考以下文章

用 Pandas 数据框中的行填充嵌套字典

如何使用 Pandas 在 Python 中基于同一行中的另一个单元格设置单元格值

如何在python pandas中用0填充空单元格[重复]

如何在 Pandas Python 中为一组主键分组填充 NA 值

如何使用连接来填充列的缺失值 - Python Pandas?

Python Pandas 向DataFrame中添加一行/一列