Я использую функцию get_friends
из пакета rtweet
, чтобы получить список user_id
друзей группы целевых пользователей, которые были отобраны у участников дискурса в Твиттере.Функция возвращает список тиблей.
В каждом столбце есть два столбца - один с user_id
для фокусного пользователя, а второй с user_id
из друзей-фокусников.Поскольку у каждого пользователя разное количество друзей, количество строк в каждом столбце разное.
Моя проблема: учетные записи некоторых целевых пользователей теперь отсутствуют по неизвестным причинам.Из-за этого в списке есть пустые тиблы, которые выглядят так:
> userFriends[[88]]
# A tibble: 0 x 0
Непустой тиббл выглядит так:
> userFriends[2]
[[1]]
# A tibble: 32 x 2
user user_id
<chr> <chr>
1 777937999917096960 49510236
2 777937999917096960 60489018
3 777937999917096960 3190203961
4 777937999917096960 118756393
5 777937999917096960 2338104343
6 777937999917096960 122453931
7 777937999917096960 452830010
8 777937999917096960 60937837
9 777937999917096960 923106269761851392
10 777937999917096960 416882361
# ... with 22 more rows
Я хочу, чтобы мой код идентифицировал эти пустые тиблы иподмножество списка без этих толчков.
Я использовал функцию nrow
на этих рисунках, чтобы найти количество друзей, которых имел каждый фокусный пользователь.
nFriends <- as.numeric(lapply(userFriends, nrow))
Я взял индексы, в которых это значение равно нулю, как пустые тиблы и удалил их, используя метод поднабора следующим образом:
nullIndex <- nFriends!=0
userFriendsFinal <- userFriends[nullIndex]
Похоже, что это работает на данный момент.Но таким образом я также удаляю пользователей с нулевыми друзьями (хотя и очень маловероятно) вместе с пользователями, которые больше не существуют или недоступны через API.Я хочу убедиться, что я удаляю только тех, кто недоступен или не существует.Пожалуйста, помогите.