sklearn库没有fetch_mldata
时间: 2023-11-17 08:27:23 浏览: 40
,该怎么办?
可以使用fetch_openml函数代替fetch_mldata函数,两个函数的作用类似,只是数据来源不同。fetch_openml函数可以从OpenML数据库中下载数据。可以按照以下代码来获取数据:
from sklearn.datasets import fetch_openml
mnist = fetch_openml('MNIST_784') # 下载MNIST数据集,‘MNIST_784’ 是指该数据集的名字。
相关问题
from sklearn.datasets import fetch_mldata
from sklearn.datasets import fetch_mldata是一个Python库中的函数,用于从mldata.org网站下载和导入机器学习数据集。该函数可以帮助用户获取各种类型的数据集,例如图像、文本、音频等,以便进行机器学习和数据分析。
怎么解决无法从sklearn.datasets中导入fetch_mldata。
`fetch_mldata`已经被弃用,所以无法从`sklearn.datasets`中导入。您可以尝试以下替代方案:
1. 使用`fetch_openml`代替`fetch_mldata`,例如:
```
from sklearn.datasets import fetch_openml
mnist = fetch_openml('mnist_784')
```
2. 从外部下载数据集并手动加载数据集,例如:
```
import numpy as np
import gzip
def load_mnist(path, kind='train'):
"""Load MNIST data from `path`"""
labels_path = os.path.join(path, '%s-labels-idx1-ubyte.gz' % kind)
images_path = os.path.join(path, '%s-images-idx3-ubyte.gz' % kind)
with gzip.open(labels_path, 'rb') as lbpath:
labels = np.frombuffer(lbpath.read(), dtype=np.uint8, offset=8)
with gzip.open(images_path, 'rb') as imgpath:
images = np.frombuffer(imgpath.read(), dtype=np.uint8, offset=16).reshape(len(labels), 784)
return images, labels
X_train, y_train = load_mnist('path/to/mnist', kind='train')
X_test, y_test = load_mnist('path/to/mnist', kind='t10k')
```