【发布时间】:2018-09-26 18:24:06
【问题描述】:
我需要将读取到 csv 的 pandas 数据框分开,这个数据集需要分成 3 组,训练测试和验证。 但我的问题是我不知道 csv 有多少属性,因为我正在使用许多具有不同大小属性的 bases(一个有 3 或 4 个,而其他有 40 个以上) . 我需要分成几部分
- 培训 = 50%
- 测试 = 25%
- 验证 = 25%
因此,如果我有 5 个属性,每个属性有 100 个值,我需要为火车获取 50 行。我如何分离所有属性,最后我为每个组获得一个新的数据框,始终保持正确的比例 已经实现了读取 csv 的功能,如果你能看到它们是通用的,因为它们只接收 csv 所在的路径并返回一个新的数据框。
import pandas as pd
class Entity:
def __init__(self, path):
self.data_frame = pd.read_csv(path)
def get_value(self, attr):
return self.data_frame[attr]
def split_set(self):
pass
这个类是通用的,我需要创建这个函数split_set 来分离集合。我现在从 panda 和 python 开始,很抱歉,如果这显然很容易解决,但我想不出一个好的方法来做到这一点。
提前致谢。
【问题讨论】: