我尝试使用以下代码在Pandas中创建DataFrame:
df_coefficients = pd.DataFrame(data = log_model.coef_, index = X.columns,
columns = ['Coefficients'])
但是,我一直收到以下错误:
传递值的形状是(5,1),索引暗示(1,5)
价值观和指数如下:
指数=
Index([u'Daily Time Spent on Site', u'Age', u'Area Income',
u'Daily Internet Usage', u'Male'],
dtype='object')
值=
array([[ -4.45816498e-02, 2.18379839e-01, -7.63621392e-06,
-2.45264007e-02, 1.13334440e-03]])
我该如何解决这个问题?我之前已经构建了相同类型的表,但我从来没有遇到过这个错误。
任何帮助都将不胜感激。
由于
答案 0 :(得分:1)
看起来你的Index和Values数组有不同的形状。如您所见,Index数组有单括号,而Values数组有双括号。
这样python将index读取为shape(5,1),而Values数组为(1,5)。
如果您输入问题所写的值:
Values =
array([[ -4.45816498e-02, 2.18379839e-01, -7.63621392e-06,
-2.45264007e-02, 1.13334440e-03]])
并调用Values.shape返回 Values.shape (1,5)
相反,如果您将值设置为:
Values = np.array([ -4.45816498e-02, 2.18379839e-01, -7.63621392e-06,
-2.45264007e-02, 1.13334440e-03])
那么值的形状将是(5,),它将适合索引数组。
答案 1 :(得分:0)
您的数据有五列一行,而不是一列和五行。只需使用.T
的转置版本:
import {Pipe} from 'angular2/core';
@Pipe({
name: 'reverse',
pure: false
})
export class ReversePipe {
transform (values) {
if (values) {
return values.reverse();
}
}
}