为什么sk中的k-fold学习不打印数组值
Why does k-fold in sk learn not print array values
我正在关注 sklearn k-fold 验证的文档,我写了这段代码:
import numpy as np
from sklearn.model_selection import KFold
X = ["w", "x", "y", "a"]
print(X[0])
kf = KFold(n_splits=4)
for train, test in kf.split(X):
print(X[(test)])
在最后一行输出错误:
TypeError: only integer scalar arrays can be converted to a scalar index
为什么会出现这个错误?对不起,显然我是初学者。
正如错误所说。您的错误来自您的打印声明。这是因为 KFold.split
生成的索引与 python 列表不兼容。试试这个,
import numpy as np
from sklearn.model_selection import KFold
X = np.array(["w", "x", "y", "a"])
kf = KFold(n_splits=4)
for train, test in kf.split(X):
print(train, test)
print(X[test])
输出:
[1 2 3] [0]
['w']
[0 2 3] [1]
['x']
[0 1 3] [2]
['y']
[0 1 2] [3]
['a']
我正在关注 sklearn k-fold 验证的文档,我写了这段代码:
import numpy as np
from sklearn.model_selection import KFold
X = ["w", "x", "y", "a"]
print(X[0])
kf = KFold(n_splits=4)
for train, test in kf.split(X):
print(X[(test)])
在最后一行输出错误:
TypeError: only integer scalar arrays can be converted to a scalar index
为什么会出现这个错误?对不起,显然我是初学者。
正如错误所说。您的错误来自您的打印声明。这是因为 KFold.split
生成的索引与 python 列表不兼容。试试这个,
import numpy as np
from sklearn.model_selection import KFold
X = np.array(["w", "x", "y", "a"])
kf = KFold(n_splits=4)
for train, test in kf.split(X):
print(train, test)
print(X[test])
输出:
[1 2 3] [0]
['w']
[0 2 3] [1]
['x']
[0 1 3] [2]
['y']
[0 1 2] [3]
['a']