python如何將數(shù)據(jù)集按比例隨機切分
更新時間:2023年09月09日 09:06:14 作者:Arxan_hjw
這篇文章主要介紹了python如何將數(shù)據(jù)集按比例隨機切分問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
python將數(shù)據(jù)集按比例隨機切分
# -*- coding: utf-8 -*- """ 將數(shù)據(jù)按比例切分 """ from sklearn import model_selection c = [] j = 0 #filename = r'E:\NER\CCKS2020\Data\ccks2020_2_task1_train\task1_train.txt' filename = open(r'task1_train.txt','r',encoding='utf-8') out_train = open(r'train.txt', 'w',encoding='utf-8') out_test = open(r'temp.txt', 'w',encoding='utf-8') for line in filename: # items = line.strip().split() c.append(line) c_train, c_test = model_selection.train_test_split(c, test_size=0.2) for i in c_train: out_train.write(i) for i in c_test: out_test.write(i)
sklearn數(shù)據(jù)集隨機切分(train_test_split)
sklearn學習
給定數(shù)據(jù)集X和類別標簽y,將數(shù)據(jù)集按一定比例隨機切分為訓練集和測試集。
代碼
#!/usr/bin/env python # -*- coding: utf-8 -*- """ 功能:數(shù)據(jù)集按比例切分為訓練集和測試集 時間:2017年3月11日 12:48:57 """ # from sklearn.cross_validation import train_test_split from sklearn.model_selection import train_test_split # 更新 # 生成200個句子,前100個和后100個類別分別對應(yīng)1和2 X = [[u"這是", u"第1個", u"測試"]] * 100 + [[u"這是", u"第2個", u"測試"]] * 100 y = [1] * 100 + [2] * 100 # 隨機抽取20%的測試集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) print len(X_train), len(X_test) # 查看句子和標簽是否仍然對應(yīng) for i in range(len(X_test)): print "".join(X_test[i]), y_test[i] if __name__ == "__main__": pass
實驗結(jié)果
切分后的訓練集和測試集標簽仍然一一對應(yīng)。
更新
由于sklearn更新,代碼應(yīng)改為:
from sklearn.model_selection import train_test_split
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python無法安裝包的一種解決(Requirement already satisfied問題)
這篇文章主要介紹了Python無法安裝包的一種解決(Requirement already satisfied問題),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08C語言中printf()函數(shù)的全面介紹及用法(簡單易懂)
在C語言中,printf()是常用的輸出函數(shù),包含在頭文件中,它使用格式控制字符串,其中包括格式字符、轉(zhuǎn)義字符和普通字符,格式字符以"%"開頭,文中將用法介紹的非常詳細,需要的朋友可以參考下2024-09-09tensorflow 1.X遷移至tensorflow2 的代碼寫法
本文主要介紹了tensorflow 1.X遷移至tensorflow2 的代碼寫法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12