Я сейчас использую R 3.5.
Если я читаю csv с read.table или read.csv, вставляются три дополнительные строки. Кроме того, первый символ числа не отображается в строке 14. Это ошибка или особенность?
Вот мой пример кода и результаты:
оригинал csv:
Timestamps H_Accu_Cell_Temp
1 1 0.986812468128254
2 0.986812468128254 1
3 0.986545798058286 0.976126352748508
4 0.986163754276242 0.976075120964319
5 0.986849444565436 0.976334054547901
6 0.986474103568515 0.976091900039722
7 0.988482343788316 0.980937037663843
8 0.989252408009774 0.977824034185387
9 0.988385671670406 0.978756689011549
10 0.988243992921956 0.982650133549427
11 0.988233697491554 0.977553653045176
...
вот мой код:
data <- read.table(file = file.input,
header = TRUE,
sep = "\t",
dec = ".",
quote = "\n")
и после этого у меня есть эти данные в R:
Timestamps H_Accu_Cell_Temp
1 .988482343788316 0.980937037663843
2 0.989252408009774 0.977824034185387
3 0.988385671670406 0.978756689011549
4 Timestamps H_Accu_Cell_Temp
5 1 0.986812468128254
6 0.986812468128254 1
7 0.986545798058286 0.976126352748508
8 0.986163754276242 0.976075120964319
9 0.986849444565436 0.976334054547901
10 0.986474103568515 0.976091900039722
11 0.988482343788316 0.980937037663843
12 0.989252408009774 0.977824034185387
13 0.988385671670406 0.978756689011549
14 .988243992921956 0.982650133549427
15 0.988233697491554 0.977553653045176
...
Когда я сохраняю данные и считываю только что сохраненные данные, я получаю это здесь:
write.table(data,
file = file.output,
append = FALSE,
quote = FALSE,
sep = "\t",
eol = "\n",
na = "NA",
dec = ".",
row.names = FALSE,
col.names = TRUE)
data <- read.table(file = file.output,
header = TRUE,
sep = "\t",
dec = ".",
quote = "\n")
Timestamps H_Accu_Cell_Temp
1 .986545798058286 0.976126352748508
2 0.986163754276242 0.976075120964319
3 0.986849444565436 0.976334054547901
4 Timestamps H_Accu_Cell_Temp
5 .988482343788316 0.980937037663843
6 0.989252408009774 0.977824034185387
7 0.988385671670406 0.978756689011549
8 Timestamps H_Accu_Cell_Temp_M1_PCB
9 1 0.986812468128254
10 0.986812468128254 1
11 0.986545798058286 0.976126352748508
12 0.986163754276242 0.976075120964319
13 0.986849444565436 0.976334054547901
14 .986474103568515 0.976091900039722
15 0.988482343788316 0.980937037663843
16 0.989252408009774 0.977824034185387
17 0.988385671670406 0.978756689011549
18 .988243992921956 0.982650133549427
19 0.988233697491554 0.977553653045176
...
Я пробовал разные файлы, а также read.csv, но всегда с одинаковым результатом.
Я делаю что-то не так или это действительно ошибка? Есть ли обходной путь?
Спасибо.
UPDATE:
Сегодня вечером я попробовал один и тот же код с точно таким же файлом на нескольких компьютерах. Единственным отличием было то, что R 3.4.4 был установлен на двух компьютерах, а на двух других R 3.5.0. С R 3.4.4 работает без проблем! Только с R 3.5.0 у меня проблема описана выше. Я даже попробовал R 3.5.0 на компьютере (с той же проблемой, что и выше), а затем удалил R 3.5.0 и установил R 3.4.4, тогда он работает нормально.
Здесь вывод консоли с R 3.5.0 и RStudio версии 1.1.442:
> file.input <-'C:/temp/Correlationmatrix.csv'
> data <- read.table(file = file.input,
header = TRUE, sep = "\t", dec = ".", quote = "\n")
> print(data[1:5,1:2])
Timestamps H_Accu_Cell_Temp
1 .988482343788316 0.980937037663843
2 0.989252408009774 0.977824034185387
3 0.988385671670406 0.978756689011549
4 Timestamps H_Accu_Cell_Temp
5 1 0.986812468128254
>
Здесь вывод консоли с R 3.4.4 и RStudio версии 1.1.442:
> file.input <-'C:/temp/Correlationmatrix.csv'
> data <- read.table(file = file.input,
header = TRUE, sep = "\t", dec = ".", quote = "\n")
> print(data[1:5,1:2])
Timestamps H_Accu_Cell_Temp
1 1.0000000 0.9868125
2 0.9868125 1.0000000
3 0.9865458 0.9761264
4 0.9861638 0.9760751
5 0.9868494 0.9763341
>
По вышеуказанным причинам это должно быть связано с установкой R 3.5.0, а не с моим кодом. У кого-нибудь есть подобные проблемы? Кто-нибудь может мне помочь?
Спасибо