У меня есть кадр данных, в котором я хочу найти самые большие пары на основе двух столбцов. Однако, когда я группирую кадр данных, незначительные изменения в других столбцах влияют на мой результат.
Позвольте мне сказать вам:
library(plyr)
usercsv_data <- data.frame(id_str = c("89797", "12387231231", "1234823432", "3483487344", "89797", "1234823432"),
screen_name = c("A", "B", "C", "D", "A", "C"),
location = c("FL", "CO", "NYC", "MI", "FL", "NYC"),
verified = c("Y", "N", "N", "Y", "N", "Y"),
created = c("Sun", "Mon", "Tue", "Sun", "Tue", "Fri"),
friends_count = c(1,2,5,787,7, 5),
followers_count= c(2,4,6,897,4,3))
# id_str screen_name location verified created friends_count followers_count
# 1 89797 A FL Y Sun 1 2
# 2 12387231231 B CO N Mon 2 4
# 3 1234823432 C NYC N Tue 5 6
# 4 3483487344 D MI Y Sun 787 897
# 5 89797 A FL N Tue 7 4
# 6 1234823432 C NYC Y Fri 5 3
#This gets me the max pairs when the groups variable are unique
plyr::ddply(usercsv_data,.(id_str,screen_name),numcolwise(max))
# id_str screen_name friends_count followers_count
# 1 1234823432 C 5 6
# 2 12387231231 B 2 4
# 3 3483487344 D 787 897
# 4 89797 A 7 4
#BUT, when I want to do same technique with whole dataframe, I get same dataframe
plyr::ddply(usercsv_data,.(id_str,screen_name, location,verified,created),numcolwise(max))
# id_str screen_name location verified created friends_count followers_count
# 1 1234823432 C NYC N Tue 5 6
# 2 1234823432 C NYC Y Fri 5 3
# 3 12387231231 B CO N Mon 2 4
# 4 3483487344 D MI Y Sun 787 897
# 5 89797 A FL N Tue 7 4
# 6 89797 A FL Y Sun 1 2
Но я хотел что-то вроде этого-
# id_str screen_name location verified created friends_count followers_count
# 1 1234823432 C NYC N Tue 5 6
# 3 12387231231 B CO N Mon 2 4
# 4 3483487344 D MI Y Sun 787 897
# 5 89797 A FL N Tue 7 4
Как я могу сгруппировать, чтобы сохранить все столбцы, но сохранить только строки, в которых существуют самые большие пары? В настоящее время, когда есть больше групповых переменных, он сохраняет уникальные (как и должно быть), но не имеет достаточных знаний, заставляя меня искать вопросы.
friends_count
иfollowers_count
. Я хочу только по существу сгруппироватьscreen_name
и найти строки с наибольшей комбинацией из столбцов counts. Таким образом, остальные находятся в рядах, где преобладают эти самые большие ценности. - person CaseebRamos   schedule 22.09.2020