R 提取列表中列表的第一个元素

R 提取列表中列表的第一个元素,r,R,我有一个列表,其中我只想提取第一项并将这些值写入向量。 我对URL进行文本解析,然后检索语言(包cld2)。我的问题是,如果语言是混合的(例如“en”“de”),有时最多有3个值,所以我只想保存第一个值。 我知道如何使用for循环,但我想知道是否有更有效的方法?不太了解R,但我听说如果可能的话,应该尽量避免for循环 library(cld2) library(rvest) urls_test <- c("https://www.kickstarter.com/projects/14444

我有一个列表,其中我只想提取第一项并将这些值写入向量。 我对URL进行文本解析,然后检索语言(包cld2)。我的问题是,如果语言是混合的(例如“en”“de”),有时最多有3个值,所以我只想保存第一个值。 我知道如何使用for循环,但我想知道是否有更有效的方法?不太了解R,但我听说如果可能的话,应该尽量避免for循环

library(cld2)
library(rvest)
urls_test <- c("https://www.kickstarter.com/projects/1444419223/safetea-towel-fire-resistant-kitchen-towel", "https://www.kickstarter.com/projects/1704155986/des-vacances-en-enfer")
get_lang <- function(x) { read_html(x, trim = TRUE) %>% html_nodes(".js-full-description") %>% html_text() %>% detect_language()}
lang_codes <- map(urls_test, get_lang)
库(cld2)
图书馆(rvest)
URL\u测试%html\u text()%%>%detect\u language()}

语言代码一个选项是使用
pull

library(purrr)
map(lang_codes, pluck, 1)

或者在
base R
中使用
lappy

sapply(lang_codes, `[[`, 1)
#[1] "en" "fr"

我认为你的答案是正确的,但实际上我的列表中没有列表(我添加了一个屏幕截图)。你能发布一个可复制的示例吗?我在我的帖子中编辑了代码,以便你可以复制it@beld. 我试过你的代码,它对我来说很好me@akrun是的,它有效。我用lang_代码得到这个列表,但我认为它是一个字符数组的列表?看我的截图。现在,我只想要第一个字符。