繁体   English   中英

从csv文件生成随机样本,同时跳过具有特定值的行

[英]Generating random sample from csv file, whilst skipping rows with certain values

我正在尝试从包含数万行的 .csv 文件生成 5000 行的随机子样本。 df 包含两列:“JPG”和“NAME”。

我使用以下代码生成了一个随机子样本:

import pandas as pd

file = pd.read_csv(r'C:\filepath\data.csv', usecols = [7, 8])

sample = file.sample(n=5000)
print(sample)

但是,现在我希望做同样的事情,但包括一个 for 循环,它可以在跳过“NAME”列中带有字符串“t3”的任何行的同时执行此操作。

这是我所在的位置,但正在努力使其发挥作用:

import pandas as pd

file = pd.read_csv(r'C:\filepath\data.csv', usecols = [7, 8])

sample = file.sample(n=5000)
for num in sample:
    if sample.loc[sample['NAME'] == 't3']:
        continue
print(sample)

对此的任何帮助将不胜感激。

谢谢,R

为什么不事先用NAME t3 过滤掉所有行? 喜欢:

import pandas as pd

file = pd.read_csv(r'C:\filepath\data.csv', usecols = [7, 8])
file_without_t3 = file[file['NAME'] != 't3']

sample = file_without_t3.sample(n=5000)
print(sample)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM