Czech encoding in R - r

I have installed RStudio on a new computer, and has developed encoding issues. When I type accented text in console (no file writing or reading involved, just plain console) I lose Czech accents (as in this example - notice the accented N and Č)
> "Ňuf ňuf ňufičky"
[1] "Nuf nuf nuficky"
I know it is a settings issue - I have other R installations that behave correctly - but I am unable to find exact place in my settings to force UTF-8 behavior. Any help would be appreciated.
My session info is:
R version 3.4.2 (2017-09-28)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_3.4.2 tools_3.4.2 yaml_2.1.14

For the benefit of posterity - I overcame my problem by setting code page to 1250 (while keeping US English as my language).
if (.Platform$OS.type == 'windows') {
Sys.setlocale(category = 'LC_ALL','English_United States.1250')
} else {
Sys.setlocale(category = 'LC_ALL','en_US.UTF-8')
}
in the .Rprofile

Perhaps:
new.locale <- ifelse(.Platform$OS.type=="windows", "Czech_Czech Republic.1250", "en_US.UTF-8")
Sys.setlocale("LC_CTYPE", new.locale)
Also learn to specify your OS.

Related

Rstudio snippet editor glitching, making it extremely difficult to edit snippets

I'm having issues with Rstudio, where I'm trying to edit my code snippets, but when I go to Tools -> Global Options -> Code -> Edit Snippets.., the snippet editor opens up with the window behind the global options pop-up, while the text for the editor shows up in front of the global options pop up. I'm using R version 4.0.2, and I've tried deleting and re-downloading R and R studio, as well as restarting my session. I'll include a picture of my issue:
also, here's my session info
R version 4.0.2 (2020-06-22)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_4.0.2 rsconnect_0.8.16 tools_4.0.2 yaml_2.2.1
Setting rendering engine to 'Desktop OpenGL' solved this for me.

Is memory.limit() broken?

I run memory.limit() on my 48G Windows 10 machine and it returned 1.759219e+13. This is head scratching. I am using R 3.6.1.
Is memory.limit() broken? Any other way to obtain memory limit?
Here is my sessionInfo():
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 17763)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_3.6.1 tools_3.6.1
This is an issue with RStudio (hopefully fixed in the next update). It works well in RGui.
You can use disk.frame::df_ram_size() instead. It works on Windows 10 with RStudio and R 3.6.1.
You can install disk.frame using install.packages("disk.frame")

error in fread (showProgress is not type integer but type 'logical'. Please report.)

I have used fread to read data. But the error has arisen:
showProgress is not type integer but type 'logical'. Please report.
Here is the reproducible script:
library(data.table)
x <- "sgsddsfsfsf"
write.csv2(x,"check.csv", row.names=FALSE)
fread("check.csv", stringsAsFactor=FALSE)
Example of printscreen:
> sessionInfo()
R version 3.3.2 (2016-10-31)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] data.table_1.9.8
loaded via a namespace (and not attached):
[1] tools_3.3.2
Just fixed. Please try again from dev. Thanks for reporting.
Fixed fread() error occurring for a subset of Windows users: showProgress is not type integer but type logical, #1944 and #1111. Our tests cover this usage (it is just default usage), pass on AppVeyor (Windows), win-builder (Windows) and CRAN's Windows so perhaps it only occurs on a specific and different version of Windows to all those. Thanks to #demydd for reporting. Fixed by using strictly logical type at R level and Rboolean at C level, consistently throughout.

Error attempting to write history

Before a project is open, R rapidly throws this error:
Surprisingly, I do not find anything related to this error with google. Even if, apparently, it does not cause problems to the working session, I am interested in its effects, to avoid possible future inconveniences.
> sessionInfo()
R version 3.2.4 (2016-03-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
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
loaded via a namespace (and not attached):
[1] tools_3.2.4
Here an example of the subsequent working directory, even if this behaviour occurs for any project I open. It does not occurs when opening an isolated script.
getwd()
[1] "C:/Users/MaurizioLocale/OneDrive/Data_Science/10_Capstone_project/CP_Natural_Language"

move Rprofile from one computer to another

I am trying to put a copy of my Rprofile from my work computer onto my home computer, but R does not seem to be able to find it.
I have tried several responses to similar questions including:
In Windows, you set the R_USER profile by opening up a command line and running:
SETX R_PROFILE_USER "C:/.../.Rprofile"
Sys.getenv("R_PROFILE_USER")
[1] "C:/Users/Sally/Rprofile"
but this does not work.
I also tried:
candidates <- c( Sys.getenv("R_PROFILE"),
file.path(Sys.getenv("R_HOME"), "etc", "Rprofile.site"),
Sys.getenv("R_PROFILE_USER"),
file.path(getwd(), ".Rprofile") )
Filter(file.exists, candidates)
[1] "C:/PROGRA~1/R/R-32~1.2/etc/Rprofile.site"
I changed the location of the Rprofile file to match the Filter results with no luck.
sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 8 x64 (build 9200)
locale:
[1] LC_COLLATE=English_United States.1252
[2] LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
If anyone has any suggestions it would be appreciated.
Thanks,
Sally
That is Windows for you -- you need to define $HOME as an evironment variable, or place it in $USER or ... whatever else they decide next.
On operating systems with an x or X in the name, $HOME is well defined and ~/.Rprofile is found.
Possible workaround: just edit $RHOME/etc/Rprofile.site but remember that this file will vanish next time you upgrade R on Windows.

Resources