read.csv将`?`替换为`?`,将`-`替换为`...`

时间:2014-12-24 17:15:27

标签: r rstudio names read.csv

我使用RStudio并且我在控制台上的输出被截断了。我无法找到如何停止截断(我尝试搜索?options以及Google搜索的时间超过了我想承认的时间。

编辑:我为大家道歉!我最初的名字很长,而且这个问题只是提出了翻译服务信息的长名称 - 哪个翻译服务?'。我想我发现了这个问题。 ...并未截断,它正在使用?-替换....等未知字符。

代码

# Load File
myfile <- read.csv(file="C:\\Users\\wliu\\Desktop\\myfile.csv",
               sep=",", header=TRUE, stringsAsFactors=FALSE, skip=2)

# Get my column names
mycolnames <- colnames(myfile)

# When I request a shorter name, this returns the full name
mycolnames[1]  # Assuming first col is a short name
[1] "ThisIsAShortName"

# However, when I request a longer name, this returns a truncated version
mycolnames[2]  # Assuming second col is a really long name
[1] "ThisIsA...Long...Name"

我想取回mycolnames[2]的非截断版本(例如&#34; ThisIsAReallyReallyReallyReallyReallyLongName&#34;)

设置

我在Windows 7 64bit,RStudio版本0.98.1091,R版本3.0.1(2013-05-16) - &#34; Good Sport&#34;使用平台:x86_64-w64-mingw32 / x64(64位)。我尝试使用Git Bash作为Git项目的shell&#39;打开和关闭。

myfile.csv

ThisIsAShortName, Translation Service Info - Which translation service?

23143505, Yes
23143614, No
23143324, Yes

Char Replacement instead of truncating issue

3 个答案:

答案 0 :(得分:3)

在RStudio中,使用菜单:

Tools > Global Options > Code > Display

在“控制台”部分中,将Limit length of lines displayed in console to:设置为比当前设置的数字大得多的某个数字。

单击“确定”。

答案 1 :(得分:2)

怎么样:

options(width=300)

这是否解决了这个问题?

答案 2 :(得分:2)

这是read.csv的预期行为,而不是R中的截断问题。如果文件的列名中有空格和特殊字符,read.csv会用{{1}替换每个字符除非您指定.

以下是check.names = FALSE的一瞥,make.names生成列名的方式。

read.table

这是nm <- "Translation Service Info - Which translation service?" make.names(nm) # [1] "Translation.Service.Info...Which.translation.service."

的相关行
read.table