我的理解是pd.DataFrame().shape
返回(n_rows,n_columns)。 然而,當構造一個數據幀並且索引與數據形狀不匹配時,熊貓引發一個ValueError
,形狀爲(n_columns,n_rows)。由Pandas ValueError返回的形狀與數據框形狀不符?
實施例:
df_2 = pd.DataFrame(np.random.randn(10,2), index = range(9))
ValueError: Shape of passed values is (2, 10), indices imply (2, 9)
爲什麼ValueError異常不能打印:
形狀傳遞的值是(10,2),指數意味着(9,2)
熊貓版本:'0.17.1'
感謝您的解釋,但我明白爲什麼會引發ValueError。我的問題是爲什麼它說'傳遞值的形狀是(2,10)'。我認爲它應該閱讀'傳遞值的形狀是(10,2)' – imp9
@ imp2啊哈,我看到嗯,這很奇怪。快速調試%,表明它在這裏定義:https://github.com/pydata/pandas/blob/a050a331a7fdf87d8c4290a9a1da00dd56f42595/pandas/core/internals.py#L3876-L3883:s有趣!如果你喜歡修復,我肯定會非常感激! –