我可以在控制台中看到整个数据框。是否有任何可能的方法或任何功能来查看R-Console中的数据框(编辑类似于Excel的数据框),以便我能够手动编辑数据?
答案 0 :(得分:4)
您可以使用:
edit(name, factor.mode = c("character", "numeric"),
edit.row.names = any(row.names(name) != 1:nrow(name)), ...)
示例:
edit(your_dataframe)
您可以在此链接的帮助下详细了解 - Here
答案 1 :(得分:3)
您可以使用View()
View(df)
正如@David Arenburg所说,你也可以在一个可编辑的视图中打开你的数据帧,但要注意这很慢:
编辑(DF)
有关影响数据框使用的更新/更改:
df <- edit(df)
答案 2 :(得分:3)
您真的可以使用edit()
或view()
。
但也许,如果您的数据集不够大,如果您更喜欢使用Excel,则可以使用以下函数:
library(xlsx)
view.excel<-function(inputDF,nrows=5000){
if (class(inputDF)!="data.frame"){
stop("ERROR: <inputDF> class is not \"data.frame\"")
}
if(nrow(inputDF)>5000 & nrows!=-1){
inputDF=inputDF[1:nrows,]
}
tempPath=tempfile(fileext='.xlsx')
write.xlsx(inputDF,tempPath)
system(paste0('open ',tempPath))
return(invisible(tempPath))
}
我已经定义了这个功能来帮助我完成R ...中的一些任务。
基本上,您只需要将DataFrame作为参数传递给函数。默认情况下,该函数最多显示5000行(您可以设置参数nrows = -1
以查看所有行,但可能很慢)。
此功能在Excel中打开您的DataFrame,并返回保存临时视图的路径。如果您想保存并加载临时视图,在使用Excel直接更改内容后,您可以再次加载数据框:
# Open a view in excel
tempPath <- view.excel(initialDF, nrows=-1)
# Load the file of the Excel View in the new DataFrame modifiedDF
modifiedDF <- read.xlsx(tempPath)
此功能在Linux,Windows或Mac中可能效果很好。
答案 3 :(得分:0)
由于当今有很多人在使用RStudio和Shiny(并在其中进行开发),所以R用户的使用变得更加便捷。
您应该查看rhandsontable
package。
我偶然发现的一个博客:https://stla.github.io/stlapblog/posts/shiny_editTable.html也有一个很好的rhandsontable
的Shiny实现。它没有使用控制台,但无论如何它都是非常漂亮的:
答案 4 :(得分:0)
(几年后)如果使用RStudio,可能值得尝试:它似乎支持所有数据类型。我没有广泛使用它,但是在帮助上我有所帮助:
https://cran.r-project.org/web/packages/editData/README.html
默认情况下会显示一个编辑对话框。如果数据框很大,则可以在显示对话框时浏览到http://127.0.0.1:7212,以获取可调整大小的编辑视图。
答案 5 :(得分:0)
您可以使用 fix()
函数查看和编辑数据框:
# Open the mtcars dataframe for editing:
fix(mtcars)
# Edit and close.
# This produces the same result:
mtcars <- edit(mtcars)
# But it is a longer command to write.