Как удалить строку на основе последних номеров столбца в R? - PullRequest
0 голосов
/ 30 марта 2020

У меня есть df1, который выглядит следующим образом:

        Stabr  Area_name    trucks FIPS   cars accidents
    1    US  United States  13.1    0       0      0
    2    AL        Alabama  16.8   1000     0      0
    3    AL Autauga County  13.8   52000    17     0
    4    AL Baldwin County  9.8    4000     33     0
    5    AL Barbour County  30.9   1230     0      0
    6    AL    Bibb County  21.8   1700     0      0

Я хотел бы удалить все строки, которые имеют значение 0 в FIPS, и все строки, которые имеют последние три цифры = 000 в FIPS. Я думал, что это будет просто проверка, чтобы увидеть, если FIPS = 0, или если это делится на 1000. Есть ли способ сделать это?

Вывод должен выглядеть следующим образом:

        Stabr  Area_name    trucks FIPS   cars accidents
    5    AL Barbour County  30.9   1230     0      0
    6    AL    Bibb County  21.8   1700     0      0

1 Ответ

1 голос
/ 30 марта 2020

Да, вы можете сохранить строку, если FIPS не равно 0 и если FIPS не делится на 1000.

subset(df, FIPS != 0 & FIPS %% 1000 != 0)

#  Stabr     Area_name trucks FIPS cars accidents
#5    AL BarbourCounty   30.9 1230    0         0
#6    AL    BibbCounty   21.8 1700    0         0

На самом деле, вы можете проверить только 1000, поскольку 0/1000 выдаст 0.

subset(df, FIPS %% 1000 != 0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...