r - 如何将 “get caption”函数应用于列中的每一行?

标签 r youtube apply transcription

我在R中创建了一个数据框,其中第2列包含每行从YouTube提取的URL。下载了youtubecaption程序包,并希望将“get_caption()”函数应用于具有网址的列中的每一行。这是因为我想从收集到的每个URL抄录音频。

我尝试通过执行以下操作来创建一个函数来自动执行此操作:

# Extracts the URLs from the page with the playlist of YouTube Videos
ExtractTranscript <- function(){
  # Extract the Transcripts
  Transcripts <- get_caption()%>%
  return(data_frame(Transcript = Transcripts))
}

然后,我尝试使用apply函数对列中的每个网址使用get caption:
apply(YouTubeUrls,2, ExtractTranscript)

但是,它没有用。您有什么建议吗?谢谢!!

最佳答案

以下应获取所有标题并将其存储在列表中。

captions <- sapply(YouTubeUrls[,2], FUN = get_caption)

这来自R中的apply函数的“族”。它对列表/ vector (在这种情况下为数据帧的第2列)进行迭代(如for循环),并应用get_caption函数。然后它将从youtube视频中找到的字幕存储在列表中。然后,您应该能够使用标准列表访问存储实际字幕的小标题,例如:
 captions[[1]]

关于r - 如何将 “get caption”函数应用于列中的每一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61212729/

相关文章:

python - 如何抓取 YouTube channel 创建者并链接到他们的 channel ?

php - 如何改善YouTube搜索功能?

r - 拆分因数、sapply 和 lm

javascript - `apply` 没有 't work for function as object' 的属性

r - 对多个向量调用 setdiff()

r - 如何快速创建具有重复元素的大向量?

ruby - 从 v3 数据 API 确定 YouTube channel URL

python - Pandas - 将列值组合到新列中的列表中

r - 将向量中的每个元素与自身相乘以创建矩阵

r - 使用 group_by() 根据条件折叠 R 中的数据集