Получите одно из каждых нескольких значений в столбце

#r #dataframe

Вопрос:

У меня есть фрейм данных со столбцом, который содержит несколько записей некоторых значений — некоторых показателей. Мне нужно выбрать одно из значений любого типа. Например, предположим, что у нас есть тиббл из набора данных Gapminder.

 # A tibble: 1,704 x 6  country continent year lifeExp pop gdpPercap  lt;fctgt; lt;fctgt; lt;intgt; lt;dblgt; lt;intgt; lt;dblgt;  1 Afghanistan Asia 1952 28.8 8425333 779.  2 Afghanistan Asia 1957 30.3 9240934 821.  3 Afghanistan Asia 1962 32.0 10267083 853.  4 Afghanistan Asia 1967 34.0 11537966 836.  5 Afghanistan Asia 1972 36.1 13079460 740.  6 Afghanistan Asia 1977 38.4 14880372 786.  7 Afghanistan Asia 1982 39.9 12881816 978.  8 Afghanistan Asia 1987 40.8 13867957 852.  9 Afghanistan Asia 1992 41.7 16317921 649. 10 Afghanistan Asia 1997 41.8 22227415 635.  

Как мне получить список стран?

 Afghanistan Albania Algeria Andorra Angola  

…и так далее. Или для континентов:

 Africa Antarctica Asia Australia Europe North America South America  

Комментарии:

1. Вы что-то ищете unique() ? Попробуй unique(gapminder$continent)

2. Спасибо! Я пытался unique() , но это не сработало, потому что мой тиббл-это соединение с базой данных. Простите мою глупость!

Ответ №1:

 library(dplyr)   df= read.table(  header = TRUE, text="  Row country continent year lifeExp pop gdpPercap  1 Afghanistan Asia 1952 28.8 8425333 779.  2 Afghanistan Asia 1957 30.3 9240934 821.  3 Afghanistan Asia 1962 32.0 10267083 853.  4 Afghanistan Asia 1967 34.0 11537966 836.  5 Afghanistan Asia 1972 36.1 13079460 740.  6 Afghanistan Asia 1977 38.4 14880372 786.  7 Afghanistan Asia 1982 39.9 12881816 978.  8 Afghanistan Asia 1987 40.8 13867957 852.  9 Afghanistan Asia 1992 41.7 16317921 649.  10 Afghanistan Asia 1997 41.8 22227415 635.")   df %gt;%  distinct() %gt;%  count("country")      country freq  1 Afghanistan 10   

Комментарии:

1. Прекрасно, спасибо. Именно то, что я искал.