python中用样本随机生成十个不同的训练样本

问题

有样本文件 dataSample_new.csv , 从该样本文件中抽取2/3作为训练样本,共抽取十次,并且保证每次的训练样本不同。

#导包
import numpy as np
import pandas as pd
import gdal
import os
import glob
import random

#获取文件,定义训练样本大小
my_path = r'G:\2018LZQ'                      #文件路径
path = r'G:\2018LZQ\dataSample_new.csv'      #原始样本文件
target = pd.read_csv(path,header=None,sep=',')
target_rows = target.shape[0]                #样本文件的行数
trans_rows = int(target_rows*0.66)           #训练样本的行数,占原样本的2/3

#对原样本文件抽取训练样本,抽取10个
for i in range(10):
    #在原样本文件中随机选取2/3行,并存入列表
    target_list = random.sample(range(1,target_rows),trans_rows) 
    #根据列表中的行号提取原样本中的行,存放到新的datafram中
    new_csv = target.iloc[target_list]   
    #命名训练样本名称 
    new_name = "train"+str(i)+'.csv'
    csv_name = os.path.join(my_path,new_name)
    #将训练样本存入文件
    new_csv.to_csv(csv_name,header=None,index=False)
    print(new_name)
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值