将多个 csv 从网络导入到一个数据框中
import multiple csv from web into one data frame
我想从网上读取几个csv文件并将数据保存到数据框中。
如果文件在我的计算机上,这将非常容易,但我并不总是想下载文件。
例子:
"https://www.football-data.co.uk/mmz4281/1819/F1.csv",
"https://www.football-data.co.uk/mmz4281/1718/F1.csv",
"https://www.football-data.co.uk/mmz4281/1617/F1.csv",
"https://www.football-data.co.uk/mmz4281/1516/F1.csv",
"https://www.football-data.co.uk/mmz4281/1415/F1.csv",
"https://www.football-data.co.uk/mmz4281/1314/F1.csv",
"https://www.football-data.co.uk/mmz4281/1213/F1.csv",
"https://www.football-data.co.uk/mmz4281/1112/F1.csv",
"https://www.football-data.co.uk/mmz4281/1011/F1.csv"
这些是 CSV 文件。也许它可能有一个函数或一个循环,但我不知道如何。
也许你能帮我。
问候
从 Web 读取文件与从文件系统读取文件一样简单;你可以将 URL 而不是 file-path 传递给 readr::read_csv()
(你用 readr
标记了你的问题,所以我假设你想使用它)。
假设您的文件在向量中:
files <- c("https://www.football-data.co.uk/mmz4281/1819/F1.csv",
"https://www.football-data.co.uk/mmz4281/1718/F1.csv",
"https://www.football-data.co.uk/mmz4281/1617/F1.csv",
"https://www.football-data.co.uk/mmz4281/1516/F1.csv",
"https://www.football-data.co.uk/mmz4281/1415/F1.csv",
"https://www.football-data.co.uk/mmz4281/1314/F1.csv",
"https://www.football-data.co.uk/mmz4281/1213/F1.csv",
"https://www.football-data.co.uk/mmz4281/1112/F1.csv",
"https://www.football-data.co.uk/mmz4281/1011/F1.csv")
您可以使用readr::read_csv
读取特定文件,并将它们合并为一个data-frame和purrr::map_dfr
:
df <- purrr::map_dfr(files, readr::read_csv)
这会遍历 files
的内容,将 readr::read_csv
应用于每个元素,并将它们按行组合到一个数据框中(因此 dfr
)。
我想从网上读取几个csv文件并将数据保存到数据框中。 如果文件在我的计算机上,这将非常容易,但我并不总是想下载文件。
例子:
"https://www.football-data.co.uk/mmz4281/1819/F1.csv",
"https://www.football-data.co.uk/mmz4281/1718/F1.csv",
"https://www.football-data.co.uk/mmz4281/1617/F1.csv",
"https://www.football-data.co.uk/mmz4281/1516/F1.csv",
"https://www.football-data.co.uk/mmz4281/1415/F1.csv",
"https://www.football-data.co.uk/mmz4281/1314/F1.csv",
"https://www.football-data.co.uk/mmz4281/1213/F1.csv",
"https://www.football-data.co.uk/mmz4281/1112/F1.csv",
"https://www.football-data.co.uk/mmz4281/1011/F1.csv"
这些是 CSV 文件。也许它可能有一个函数或一个循环,但我不知道如何。
也许你能帮我。
问候
从 Web 读取文件与从文件系统读取文件一样简单;你可以将 URL 而不是 file-path 传递给 readr::read_csv()
(你用 readr
标记了你的问题,所以我假设你想使用它)。
假设您的文件在向量中:
files <- c("https://www.football-data.co.uk/mmz4281/1819/F1.csv",
"https://www.football-data.co.uk/mmz4281/1718/F1.csv",
"https://www.football-data.co.uk/mmz4281/1617/F1.csv",
"https://www.football-data.co.uk/mmz4281/1516/F1.csv",
"https://www.football-data.co.uk/mmz4281/1415/F1.csv",
"https://www.football-data.co.uk/mmz4281/1314/F1.csv",
"https://www.football-data.co.uk/mmz4281/1213/F1.csv",
"https://www.football-data.co.uk/mmz4281/1112/F1.csv",
"https://www.football-data.co.uk/mmz4281/1011/F1.csv")
您可以使用readr::read_csv
读取特定文件,并将它们合并为一个data-frame和purrr::map_dfr
:
df <- purrr::map_dfr(files, readr::read_csv)
这会遍历 files
的内容,将 readr::read_csv
应用于每个元素,并将它们按行组合到一个数据框中(因此 dfr
)。