您的位置:首页 > 其它

【基础技能】pandas 操作csv方法 &&StratifiedShuffleSplit

2018-02-09 09:50 141 查看
#read CSV read_csv读取的数据类型为Dataframe
# obj_2=pd.read_csv('f:/ceshi.csv',header=0,names=range(2,5))#表示文件第0行(即第一行,索引从0开始)为列索引,这样加names会替换原来的列索引。# header=None 原始文件数据没有列索引sample = pd.read_csv(file_dir + file_name + '.csv', low_memory=False, encoding='gbk')
sample.set_index(id_name, inplace=True)  # 把索引换成ID
sample.rename(columns={label_name: 'y'}, inplace=True) #把csv中label_name更改为'y'
target = sample.pop('y').to_frame()
#删除第一列
df.drop(df.columns[[0]], axis=1, inplace=True)
#删除删除y列
val_X = val.drop(['y'], axis=1)
=====================================================from sklearn.model_selection import StratifiedShuffleSplitimport numpy as npX = np.array([[1, 2], [3, 4], [1, 2], [3, 4],[1, 2],[3, 4], [1, 2], [3, 4]])#训练数据集8*2y = np.array([0, 0, 1, 1,0,0,1,1])#类别数据集8*1ss=StratifiedShuffleSplit(n_splits=5,test_size=0.25,train_size=0.75,random_state=0)#分成5组,测试比例为0.25,训练比例是0.75参数 random_state控制是将样本随机打乱
for train_index, test_index in ss.split(X, y):print("TRAIN:", train_index, "TEST:", test_index)#获得索引值X_train, X_test = X[train_index], X[test_index]#训练集对应的值y_train, y_test = y[train_index], y[test_index]#类别集对应的值
1.其产生指定数量的独立的train/test数据集划分数据集划分成n组。 2.首先将样本随机打乱,然后根据设置参数划分出train/test对。 3.其创建的每一组划分将保证每组类比比例相同。即第一组训练数据类别比例为2:1,则后面每组类别都满足这个比例
[结果]"D:\Program Files\Anaconda3\python.exe" D:/dnnLearn/allProject/trading1.0/test.py
TRAIN: [5 2 6 4 1 3] TEST: [7 0]TRAIN: [4 3 5 2 7 1] TEST: [6 0]TRAIN: [7 1 6 2 0 4] TEST: [5 3]TRAIN: [3 6 4 7 0 5] TEST: [1 2]TRAIN: [3 4 1 7 2 0] TEST: [6 5]

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐