我有一个包含250万数据的数据集,其中包含以下示例数据。
id status count webiste source
1 True 0 www.test.com Accurate
2 True 1 www.true.com Need Test
3 False 2 Null Accurate
4 False 100 Null Need Test
id-唯一值
状态-正确/错误
计数-0-10000
网站-包含网址,否则为空
来源-准确/需要测试
其他列的范围从0-1000等等。
我想向用户显示数字列的滑块选项和其他列的下拉列表。
我要根据用户的说明选择数据子集的数量。
例如:将Status设置为True并包含网站和网站。
这些规格将由用户给出。这些需要在R或python中完成吗?
答案 0 :(得分:2)
这是一个让您入门的示例。这将计算网站字段不是NA,状态为TRUE
且行数在30到100之间的行数。
nrow(dataset[!is.na(dataset$website) & dataset$status == TRUE & dataset$count >= 30 & dataset$count <= 100, ])
请注意,每个条件实际上仅保留那些满足条件的行。但是请注意,如果R不确定行是否符合您的条件(因为它具有NA),则它将返回。例如。如果我们知道我们有一些状态值为NA(并且我们不想对它们进行计数),那么我们应该对代码进行如下修改:
nrow(dataset[!is.na(dataset$website) & (dataset$status == TRUE & !is.na(dataset$status)) & dataset$count >= 30 & dataset$count <= 100, ])
另一个提示:不要忘记最后一个方括号前的逗号
现在,要使其动态化(即接受用户输入),您可以像这样简单地将硬编码值替换为用户输入
user_selected_status <- TRUE
user_selected_min_count <- 30
user_selected_max_count <- 100
nrow(dataset[!is.na(dataset$website) & (dataset$status == user_selected_status & !is.na(dataset$status)) & dataset$count >= user_selected_min_count & dataset$count <= user_selected_max_count, ])