web-dev-qa-db-ja.com

NameErrorが発生するのはなぜですか:name 'train_test_split' is not defined?

私はオンラインで見つけたディープラーニングの音声分析についてこのチュートリアルに従ってきましたが、それは私に名前エラーを与え続けました。私はpythonにかなり慣れていないので、それを定義する方法がわかりません。しかし、train_test_splitはデフォルトでデータを分割するメソッドであり、train_test_splitがインポートされます

ここにコードがあります:

'' '

import numpy as np
import pandas as pd 
import os
import seaborn as sns
import matplotlib.pyplot as plt
import seaborn as sns
plt.style.use('fivethirtyeight')
from tqdm import tqdm
print(os.listdir("../input"))

from keras import Sequential
from keras import optimizers
from keras.preprocessing.sequence import pad_sequences
from keras.models import Sequential,Model
from keras.layers import LSTM, Dense, Bidirectional, Input,Dropout,BatchNormalization,CuDNNLSTM, GRU, CuDNNGRU, Embedding, GlobalMaxPooling1D, GlobalAveragePooling1D, Flatten
from keras import backend as K
from keras.engine.topology import Layer
from keras import initializers, regularizers, constraints
from sklearn.model_selection import KFold, cross_val_score, train_test_split

train = pd.read_json('C:/Users/User/Downloads/dont-call-me-turkey/train.json')
display(train.shape)

train.head()

train_train, train_val = train_test_split(train, random_state = 42)
xtrain = [k for k in train_train['audio_embedding']]
ytrain = train_train['is_turkey'].values
xval = [k for k in train_val['audio_embedding']]
yval = train_val['is_turkey'].values '''

エラーが発生しました:

NameError                                 Traceback (most recent call last)
<ipython-input-19-1e07851e6519> in <module>
----> 1 train_train, train_val = train_test_split(train, random_state = 42)
      2 xtrain = [k for k in train_train['audio_embedding']]
      3 ytrain = train_train['is_turkey'].values
      4 xval = [k for k in train_val['audio_embedding']]
      5 yval = train_val['is_turkey'].values

NameError: name 'train_test_split' is not defined
1
silvermaze

おそらくsklearnをインストールしていませんPip install sklearnすでにそれを行っている場合は、以下を試してください:from sklearn.cross_validation import train_test_split

3
Capie