将列表插入 Pandas DataFrame 的特定单元格可能比使用标准 Python 更复杂列表。以下是对解决方案和潜在陷阱的探索。
考虑示例 DataFrame df 和列表 abc,由于可能存在不兼容的数据类型,将列表插入单元格 1B 可能具有挑战性。使用 df.ix[1,'B'] = abc 会产生错误,因为它尝试将列表分配给单个单元格而不是行或列。 df.ix[1,'B'] = [abc] 或 df.ix[1,'B'] = ['foo', 'bar'] 等替代方案会导致列表中的元素计数不正确。
对于更复杂的 DataFrame,例如包含混合数据类型的 df2 或 df3,使用 df2.loc[1,'B'] = abc 或 df3.loc[1,'B'] = abc 可能会触发错误。发生这种情况是因为 loc 将值分配给行或列而不是单个单元格。
解决方案在于使用 df.at[1, 'B'] = abc。此方法可确保将列表插入到正确的单元格中,而不会遇到类型冲突。但是,确保插入列表的列(在本例中为“B”)的 dtype 设置为“object”以容纳列表至关重要。否则,您可能会遇到 ValueError。
以上是如何将列表插入 Pandas DataFrame 的单元格中?的详细内容。更多信息请关注PHP中文网其他相关文章!