我使用pandas从CSV文件导入大量数据,一旦读取,我将其格式化为仅包含数字数据。然后,它返回列表中的列表。然后每个列表包含大约140k位数据。 numericalData[][]
。
从此列表中,我希望创建Testing
和Training Data
。对于我的测试数据,我希望有30%的读取数据numericalData
,所以我使用下面这段代码;
testingAmount = len(numericalData0[0]) * trainingDataPercentage / 100
工作一种享受。然后,我使用numpy从我导入的numericalData
;
testingData.append(np.random.choice(numericalData[x], testingAmount) )
然后返回一个包含38列(在循环中运行)的样本,其中每列包含从导入的numericalData
中随机选择的大约49k个数据元素。
问题是,我的trainingData
需要保留其他70%的数据,但我不确定如何执行此操作。我尝试比较testingData
中的每个元素,如果两个元素不相等,则将其添加到我的trainingData
。这导致了一个错误,并没有奏效。接下来,我尝试从导入的数据中删除所选的testingData
,然后将该新列保存到我的trainingData
,唉,这不再适用。
我过去一周只与python合作过,所以我现在有点迷失方向。
答案 0 :(得分:3)
之后您可以使用random.shuffle
和拆分列表。对于玩具示例:
import random
data = range(1, 11)
random.shuffle(data)
training = data[:5]
testing = data[5:]
要获取更多信息,请阅读docs。