我有一个列表,当填充时,将放入pandas dataframe
。有时,main_list
在每个list
中有4
元素,有时它有3
。在
# Example list 1
[["foo1", "baa1", "faa1", "gaa1"], ["foo2", "baa2", "faa2", "gaa2"], ["foo3", "baa3", "faa3", "gaa3"]]
# Example list 2
[["foo1", "baa1", "faa1"], ["foo2", "baa2", "faa2"], ["foo3", "baa3", "faa3", "gaa3"]]
当我将main_list
读入其中时,我定义了pandas数据帧列。执行example list 1 and 2
下面的代码似乎没有问题。在
有时,在特殊场合,example list 3
出现时,我的问题就出现了
# Example list 3
[["foo1", "baa1", "faa1"], ["foo2", "baa2", "faa2"], ["foo3", "baa3", "faa3"]]
当发生这种情况时,列表中只有3
元素,而不是通常的4
。熊猫会扔给我一个AssertionError: 4 columns passed, passed data had 3 columns
我理解发生了什么,因为只有3
元素。但是我能做些什么来解决这个问题呢?在
这就是使用pandasreindex获得通用解决方案的方法:
以下是我的输出和您的最新列表:
^{pr2}$您可以先创建一个通用数据帧(不指定列名),然后在以下事实之后重命名列:
当
example_list
是第三个示例时,pd.DataFrame(example_list)
将只有3列。要确保df
包含所有四列,请使用reindex
。这是上面最后一行的目的。在例如
^{pr2}$收益率
相关问题 更多 >
编程相关推荐