我目前正在阅读"收集"包含int类型的所有可能结果的文件,我将其读入DataFrame。
cycle = 19380816
pull = 10000000
sample = rand.sample(range(cycle),cycle-pull)
new_df = pd.read_csv('collection.txt', skiprows = sample, sep = " ", names = ['a1','b1','c1','a2','b2','c2','a3','b3','c3','a4','b4','c4','a5','b5','c5'], header = None)
当然样本不能大于实际文件的长度。 我想随机拉出超过文件中行长的行。 在这种情况下," pull>周期&#34 ;. 基本上是
rand.choice, 'of line in "collections.txt"', N times
有没有办法使用pd.read_csv?
执行此操作答案 0 :(得分:0)
您可以随时读取整个数据帧,然后从行索引中取n个样本(使用rand.choices替换),然后使用iloc获取新的采样数据帧。
# cycle = 19380816
pull = 10000000
whole_df = pd.read_csv('collection.txt', sep = " ", names = ['a1','b1','c1','a2','b2','c2','a3','b3','c3','a4','b4','c4','a5','b5','c5'], header = None)
i_sample = rand.choices(range(len(whole_df)), k=pull)
new_df = whole_df.iloc[i_sample]