2201_76024245 2022-12-28 09:55 采纳率: 66.7%
浏览 40
已结题

SVM训练集和测试集的划分

怎么做到训练前90%行并测试最后10%行?在test.size和train.size可以设置吗?

  • 写回答

1条回答 默认 最新

  • heart_6662 2022-12-28 10:35
    关注

    望采纳!点击该回答右侧的“采纳”按钮即可采纳!!
    可以使用pandas的sample方法来随机选择数据的行,然后使用train_test_split函数将数据分为训练集和测试集。

    代码我给你写了一份,有用可以采纳博主的答案呀

    import pandas as pd
    from sklearn.model_selection import train_test_split
    
    读取数据
    data = pd.read_csv('data.csv')
    
    随机选择数据的行
    data_sample = data.sample(frac=1)
    
    取前90%的数据作为训练集,剩余的数据作为测试集
    train_size = int(len(data_sample) * 0.9)
    train = data_sample[:train_size]
    test = data_sample[train_size:]
    
    也可以使用train_test_split函数将数据分为训练集和测试集
    X = data_sample.iloc[:, :-1]
    y = data_sample.iloc[:, -1]
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.1, random_state=42)
    
    print('训练集大小:', len(X_train))
    print('测试集大小:', len(X_test))
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 1月4日
  • 已采纳回答 12月28日
  • 创建了问题 12月28日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部