【问题标题】:pandas dot product only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indicespandas 点积仅整数、切片 (`:`)、省略号 (`...`)、numpy.newaxis (`None`) 和整数或布尔数组是有效索引
【发布时间】:2021-10-26 08:30:40
【问题描述】:

我有这个名为 xTest 的数据框和这个向量 x 两种类型都是numpy.ndarray x 长度为 197 xtest 的形状是 (25000, 197)。 我正在尝试通过获取xTestx 的点积来为xTest 生成一个称为预测的新列。

我试过了:

xTest["pred"] = np.dot(xTest,x)

xTest["pred"] = xTest.dot(x)

我不断收到此错误: IndexError: only integers, slices (:), ellipsis (...), numpy.newaxis (None) and integer or boolean arrays are valid indices.

xTest 已经是一个热编码。

更新: 感谢下面指出的好人 我能够像这样解决它

df = pd.DataFrame()
df["pred"] = np.dot(xTest,x)

【问题讨论】:

  • print(type(xTest)) 的结果是什么?
  • @user17242583
  • @user17242583 都具有相同的类型

标签: python pandas dataframe


【解决方案1】:

因为xTest 是一个numpy 数组而不是dataframe,你不能使用字符串来索引它。您正在尝试访问 xTest 上的 pred,假设 xTest 是一个数据框,但它只是数据框中的一列。

【讨论】:

    猜你喜欢
    • 2016-04-29
    • 2019-09-26
    • 2017-12-08
    • 2019-03-13
    • 2017-11-24
    • 2019-12-15
    • 2018-03-11
    • 2021-08-29
    • 2019-12-12
    相关资源
    最近更新 更多