过滤数据后,环境显示相同的数据大小
After I filter my data, the environment shows it same data size
如图中的问题所示,在我过滤数据两次后,buyer_dormant
和buyer_converted
仍然具有与buyer_before_20161222相同的obs
。
控制台在筛选过程中没有显示任何错误。所以我对发生的事情感到很困惑。
当我试图测试数据以查看哪里出了问题时,我在 table buy_converted
中过滤了 order_amount==0 & 20170222<order_date<=20170522
。结果应该是没有结果,但是它返回了order_amount=1
。
我对自己的情况很迷茫,不知道自己缺了什么。
任何建议将不胜感激!
您确定您的 SQL 查询措辞正确吗?对于第一个 sql 查询,请尝试 "SELECT customer_id, order_amount, order_date FROM buyer_before_20161222 WHERE (order_amount <=0) AND (order_date BETWEEN 2016122 AND 20170222)"
并查看是否有效。
如果您只想要 customer_id
描述的休眠和转换买家群体,请尝试使用 dplyr
:
编写的以下代码
201612222之前买过东西的顾客:
buyer_before_2016122 <- order_table %>%
filter(order_amount>=1, order_date < 20161222) %>%
select(customer_id)
在 20161222 和 20170222 之间没有购买任何东西的客户,筛选出在 20161222 之前确实购买过东西的客户,也就是休眠买家:
buyer_dormant <- order_table %>%
filter(between(order_date, 20161222, 20170222), order_amount <= 0,
customer_id %in% buyer_before_2016122$customer_id )
在 20170222 和 20170522 之间购买的客户,筛选出休眠买家,也就是转化买家:
buyer_converted <- order_table %>%
filter(between(order_date, 20170222, 20170522), order_amount >= 1,
customer_id %in% buyer_dormant$customer_id )
希望对您有所帮助!
如图中的问题所示,在我过滤数据两次后,buyer_dormant
和buyer_converted
仍然具有与buyer_before_20161222相同的obs
。
控制台在筛选过程中没有显示任何错误。所以我对发生的事情感到很困惑。
当我试图测试数据以查看哪里出了问题时,我在 table buy_converted
中过滤了 order_amount==0 & 20170222<order_date<=20170522
。结果应该是没有结果,但是它返回了order_amount=1
。
我对自己的情况很迷茫,不知道自己缺了什么。
任何建议将不胜感激!
您确定您的 SQL 查询措辞正确吗?对于第一个 sql 查询,请尝试 "SELECT customer_id, order_amount, order_date FROM buyer_before_20161222 WHERE (order_amount <=0) AND (order_date BETWEEN 2016122 AND 20170222)"
并查看是否有效。
如果您只想要 customer_id
描述的休眠和转换买家群体,请尝试使用 dplyr
:
201612222之前买过东西的顾客:
buyer_before_2016122 <- order_table %>%
filter(order_amount>=1, order_date < 20161222) %>%
select(customer_id)
在 20161222 和 20170222 之间没有购买任何东西的客户,筛选出在 20161222 之前确实购买过东西的客户,也就是休眠买家:
buyer_dormant <- order_table %>%
filter(between(order_date, 20161222, 20170222), order_amount <= 0,
customer_id %in% buyer_before_2016122$customer_id )
在 20170222 和 20170522 之间购买的客户,筛选出休眠买家,也就是转化买家:
buyer_converted <- order_table %>%
filter(between(order_date, 20170222, 20170522), order_amount >= 1,
customer_id %in% buyer_dormant$customer_id )
希望对您有所帮助!