我正在使用熊猫从CSV文件导入很多数据,一旦读取,我便将其格式化为仅包含数字数据.然后,这将返回列表中的列表.然后,每个列表包含约140k位数据. numericData [] [].
我希望从该列表中创建测试和培训数据.对于我的测试数据,我希望有30%的读取数据numericData,所以我使用下面的代码;
testingAmount = len(numericalData0[0]) * trainingDataPercentage / 100
工作请客.然后,我使用numpy从导入的numericData的每一列中选择该数据量.
testingData.append(np.random.choice(numericalData[x], testingAmount) )
然后,这将返回一个具有38列的样本(循环运行),其中每列都有大约49k数据元素,这些数据是从我导入的numericData中随机选择的.
问题是,我的trainingData需要保留其他70%的数据,但是我不确定如何执行此操作.我试图比较testingData中的每个元素,如果两个元素都不相等,则将其添加到我的trainingData中.这导致了错误,并且无法正常工作.接下来,我尝试从导入的数据中删除所选的testingData,然后将该新列保存到我的trainingData中,这本来就不起作用.
过去一周我只使用python,所以我对现在尝试的内容有些迷茫.
解决方法:
之后,您可以使用random.shuffle和split list.对于玩具示例:
import random
data = range(1, 11)
random.shuffle(data)
training = data[:5]
testing = data[5:]