我正在导入数字数据集。只有一列是 Numbers_Picked ,有600,000行。每行包含 20个整数,范围从01到80,每个由空格分隔。我的问题是R只会将其作为字符处理。当表示为字符时,所有20个数字都会显示出来。
library(readr)
numbers_picked <- read_delim("C:/Users/HP/Desktop/csv/numbers_picked.csv",
" ", escape_double = FALSE, col_types = cols(numbers_picked =
col_character()))
View(numbers_picked)
当我使用空格分隔符并将其设置为整数时,数据预览显示该列只接受一个值。
library(readr)
numbers_picked <- read_delim("C:/Users/HP/Desktop/csv/numbers_picked.csv",
" ", escape_double = FALSE, col_types = cols(numbers_picked =
col_integer()))
View(numbers_picked)
基本上,我想在一列中代表20个整数。
这是一个数据集样本
numbers_picked
06 18 20 21 24 32 36 40 44 47 50 52 55 57 60 61 62 68 72 79
03 05 12 13 14 16 17 18 24 28 33 34 35 39 44 55 62 63 64 67
09 10 12 13 15 25 30 31 36 42 43 44 46 48 51 57 65 69 75 79
08 12 15 20 27 33 34 37 41 43 44 45 54 55 60 61 66 70 72 76
Windows 10
RSTUDIOS - 最新
文件 - .csv 链接 - Large File 600,000 + lines
答案 0 :(得分:1)
我创建了一个.csv文件,其中包含您使用''作为分隔符提供的数字,这就像一个魅力。
numbers_picked <- read.table("C:/Users/HP/Desktop/csv/numbers_picked.csv",
sep = " ")
答案 1 :(得分:0)
如果您打算使用单个列表 - 整数向量列来获取数据框,那么您可以执行以下操作。
将列作为字符向量读入,然后将str_split
读入字符向量列表。然后我们可以map
将每个字符向量转换为整数向量。
library('tidyverse')
csv_text <- 'numbers_picked
06 18 20 21 24 32 36 40 44 47 50 52 55 57 60 61 62 68 72 79
03 05 12 13 14 16 17 18 24 28 33 34 35 39 44 55 62 63 64 67
09 10 12 13 15 25 30 31 36 42 43 44 46 48 51 57 65 69 75 79
08 12 15 20 27 33 34 37 41 43 44 45 54 55 60 61 66 70 72 76'
read_csv(csv_text) %>%
mutate(numbers_picked = stringr::str_split(numbers_picked, ' ') %>% map(as.integer))
# numbers_picked
# <list>
# 1 <int [20]>
# 2 <int [20]>
# 3 <int [20]>
# 4 <int [20]>