我正在尝试将"FreeSec"列的值设置True为我的pandas数据帧的已过滤行.这是代码:
data[data["Brand"].isin(group_clients)].FreeSec = True
Run Code Online (Sandbox Code Playgroud)
但是,当我检查它们仍然设置为的值时False.
>>> data[data["Brand"].isin(group_clients)].FreeSec
12 False
163 False
164 False
165 False
166 False
167 False
168 False
169 False
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么?
通过将PCA添加到算法中,我正在努力提高kaggle数字识别教程的%96.5 SKlearn kNN预测分数,但基于PCA输出的新kNN预测非常可怕,如23%.
下面是完整的代码,如果你指出我错在哪里,我感激不尽.
import pandas as pd
import numpy as np
import pylab as pl
import os as os
from sklearn import metrics
%pylab inline
os.chdir("/users/******/desktop/python")
traindata=pd.read_csv("train.csv")
traindata=np.array(traindata)
traindata=traindata.astype(float)
X,y=traindata[:,1:],traindata[:,0]
from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test= train_test_split(X,y,test_size=0.25, random_state=33)
#scale & PCA train data
from sklearn import preprocessing
from sklearn.decomposition import PCA
X_train_scaled = preprocessing.scale(X_train)
estimator = PCA(n_components=350)
X_train_pca = estimator.fit_transform(X_train_scaled)
# sum(estimator.explained_variance_ratio_) = 0.96
from sklearn.neighbors import KNeighborsClassifier
neigh = KNeighborsClassifier(n_neighbors=6)
neigh.fit(X_train_pca,y_train)
# scale & PCA test …Run Code Online (Sandbox Code Playgroud)