6

我正在使用 RStudio,我在控制台上的输出被截断。我找不到如何停止截断(我尝试搜索?options和谷歌搜索的时间比我想承认的要长)。

编辑:我向大家道歉!我最初的长名称为“ThisIsAReallyReallyReallyReallyReallyLongName”,但问题只是出现了“翻译服务信息 - 哪个翻译服务?”的长名称。我想我找到了问题所在。...不是截断,而是用 and 替换未知字符,如?and 。-....

代码

# 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](例如“ThisIsAReallyReallyReallyReallyReallyLongName”)

设置

我使用的是 Windows 7 64 位,RStudio 版本 0.98.1091,R 版本 3.0.1 (2013-05-16)——“Good Sport”,平台:x86_64-w64-mingw32/x64(64 位)。我尝试打开和关闭“使用 Git Bash 作为 Git 项目的外壳”。

我的文件.csv

ThisIsAShortName, Translation Service Info - Which translation service?

23143505, Yes
23143614, No
23143324, Yes

字符替换而不是截断问题

4

3 回答 3

3

这是预期的行为read.csv,而不是 R 中的截断问题。当文件的列名中有空格和特殊字符时,read.csv将它们中的每一个替换为 a.除非您指定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

if (check.names) 
        col.names <- make.names(col.names, unique = TRUE)
于 2014-12-24T18:26:16.900 回答
3

在 RStudio 中,使用菜单:

Tools > Global Options > Code > Display

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

单击确定。

于 2016-11-30T21:40:55.417 回答
2

怎么样:

options(width=300)

这能解决问题吗?

于 2014-12-24T18:12:57.660 回答