我试图在我的数据框中插入一列。这是我的代码:

Dissociaton_Constant_Table=pd.DataFrame(Dissociation_Constant)
Dissociaton_Constant_Table.columns=['kD', 'Standard Deviation', 'R2']
File_names_array=np.array(File_Names)
print(len(File_names_array))
print(Dissociaton_Constant_Table.shape)
Dissociaton_Constant_Table.insert(0,'Files',[File_names_array])


这是File_names:

['first.txt', 'second.txt', 'third.txt', 'fourth.txt', 'fifth.txt', 'sixth.txt']


这就是我要添加的列的大小和我的数据表的打印输出:

6
(6, 3)


因此,它是适合的合适尺寸,所以我不完全知道问题所在。我试图重塑它的形状(从6的1D数组更改为(6,1)的2D数组,但这没有用)。如您所见,File_names最初是一个列表,因此我将其更改为数组,但这也无法解决问题。所以在这一点上,我不知道为什么我得到了我得到的错误。任何帮助将不胜感激!

最佳答案

插入-您插入不正确,因为没有括号,您的
 File_names_array已经是一个数组,应该这样进行:

Dissociaton_Constant_Table.insert(0,'Files',File_names_array)


另外,如果不需要将其放置在特定位置,则可以使用:

Dissociaton_Constant_Table['Files'] = File_names_array

关于python - ValueError:尽管大小正确,但值的长度与索引的长度不匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59433568/

10-12 18:20