У меня есть набор данных, который включает в себя имя столбца blactamases. В файле .csv «бета» часть имени импортируется в R как неверно интерпретированный символ (выглядит как я с квадратным знаком рядом с ним).R-код для изменения имени столбца, содержащего символ, не выполненный при получении
Как я регулярно импортирую этот файл, у меня есть исходный файл для выполнения некоторых основных очистки данных и подготовки набора данных для анализа. Я включил строку кода, чтобы преобразовать имя столбца к чему-то более дружественным к пользователю, смотрите ниже:
colnames(df)[which(names(df) == "î²lactamases")] <- "blactamases"
Это прекрасно работает, если я просто запустить строку кода сам по себе. Однако, когда я пытаюсь запустить исходный файл, он терпит неудачу в этой строке. Ошибка не генерируется, единственная причина, по которой я знаю, что она потерпела неудачу, заключается в том, что имя столбца не изменилось, а последующие операции, ссылающиеся на измененное имя столбца, не работают.
Еще более любопытно, что линия ниже данного в исходном файле использует точно ту же процедуру, чтобы изменить другое имя столбца и работает хорошо, когда получено:
colnames(df)[which(names(df) == "eae1")] <- "eaeseq"
Любые идеи были бы оценены - это что-то Мне нужно добавить до î²
, чтобы заставить его работать от источника правильно?
Я использую R Studio 0.99.489 и версию R 3.2.3.
> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=English_United Kingdom.1252 LC_CTYPE=English_United Kingdom.1252 LC_MONETARY=English_United Kingdom.1252
[4] LC_NUMERIC=C LC_TIME=English_United Kingdom.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] digest_0.6.8 foreign_0.8-66 xlsx_0.5.7 xlsxjars_0.6.1 rJava_0.9-7 SnowballC_0.5.1
[7] wordcloud_2.5 RColorBrewer_1.1-2 tm_0.6-2 NLP_0.1-8 rsatscan_0.3.9200 surveillance_1.10-0
[13] polyCub_0.5-2 xtable_1.8-0 epitools_0.5-7 ggmap_2.5.2 ggplot2_1.0.1 geosphere_1.4-3
[19] rgdal_1.1-1 sp_1.2-1 MRAtools_0.6.6 zoo_1.7-12 stringi_1.0-1 stringdist_0.9.4
[25] reshape2_1.4.1 dplyr_0.4.3 plyr_1.8.3 data.table_1.9.6 readxl_0.1.0 RPostgreSQL_0.4
[31] DBI_0.3.1 RODBCext_0.2.5 RODBC_1.3-12
loaded via a namespace (and not attached):
[1] slam_0.1-32 lattice_0.20-33 colorspace_1.2-6 mgcv_1.8-10 chron_2.3-47 spatstat_1.43-0
[7] jpeg_0.1-8 stringr_1.0.0 munsell_0.4.2 gtable_0.1.2 RgoogleMaps_1.2.0.7 mapproj_1.2-4
[13] parallel_3.2.3 proto_0.3-10 Rcpp_0.12.2 tensor_1.5 scales_0.3.0 abind_1.4-3
[19] deldir_0.1-9 rjson_0.2.15 png_0.1-7 RJSONIO_1.3-0 polyclip_1.3-2 grid_3.2.3
[25] tools_3.2.3 magrittr_1.5 maps_3.0.1 goftest_1.0-3 MASS_7.3-45 Matrix_1.2-3
[31] assertthat_0.1 R6_2.1.1 nlme_3.1-122
Может что-то делать с кодировка, которую вы используете, в RStudio есть опция под файлом, Reopen with Encoding, возможно, попробуйте сыграть с некоторыми из них, чтобы увидеть, работает ли она –
Не могли бы вы попробовать 'read.csv (..., encoding =" Windows-1252 ") 'и снова с« latin1 »и, наконец,« UTF-8 », чтобы убедиться, что кто-нибудь из них исправит проблему? У меня похожие проблемы с франко-канадскими персонажами. Я применил некоторые стратегии для работы с ним в своем ноутбуке: http://bertelsen.ca/invalid-multibyte-string/ –
Спасибо - я пробовал все 3 и UTF-8 правильно кодировал его как бета-знак. Я также выбрал UTF-8 для кодирования сценария, как предлагал @RyanCastner. К сожалению, это по-прежнему работает по-прежнему - выделение строк для запуска кода отлично работает, но запуск из исходной команды по-прежнему не выполняется. –