小编cos*_*k08的帖子

当我启动R/RStudio时,不需要加载R中的包?

在询问之前我已经广泛地寻找答案,但是找不到答案,但如果它在那里请指出我.每次我启动R studio时,我都会自动加载包,如:

Loading required package: RMySQL
Loading required package: DBI
Loading required package: cocor
Loading required package: RMySQL
Run Code Online (Sandbox Code Playgroud)

我想这些包每次启动R studio时都会自动停止加载,除了以下内容之外还尝试卸载并重新安装R和R studio:

detach("package:RMySQL",unload=TRUE)
Run Code Online (Sandbox Code Playgroud)

对于所有这三个包,它不起作用.请帮忙!谢谢.

sapply(ls(), function(x) class(get(x)))
named list()
Run Code Online (Sandbox Code Playgroud)

r loading package defaults

10
推荐指数
2
解决办法
794
查看次数

文字wordcloud密谋错误

我有以下代码用于绘制文字云,并得到后续错误.

wordcloud(dm$word, dm$freq, scale=c(8,.2),min.freq=2,
+           max.words=Inf, random.order=FALSE, rot.per=.15, colors=rainbow

>Warning message:
In wordcloud(dm$word, dm$freq, scale = c(8, 0.2), min.freq = 2,:health insurance could not be fit on page. It will not be plotted. Unable to view plot.
Run Code Online (Sandbox Code Playgroud)

我不明白为什么会这样.请帮忙.

r word-cloud

7
推荐指数
2
解决办法
2万
查看次数

来自包tm的findAssocs问题

我试图使用tm包找到与术语文档矩阵中的特定单词相关联的单词.

我正在使用findAssocs这个.参数findAssocs是:

  • x:术语 - 文档矩阵.
  • 术语:持有术语的角色.
  • corlimit:较低相关界限的数字.

我一直得到numeric(0)我的结果

例:

findAssocs(test.dtm, "investment", 0.90)
>numeric(0)
Run Code Online (Sandbox Code Playgroud)

有没有人熟悉findAssocs并知道我做错了什么?或者有没有人更广泛地了解numeric(0)结果可能意味着什么?

非常感谢您提前寻求帮助.

r text-mining

5
推荐指数
1
解决办法
3323
查看次数

在R中将Excel文件列表动态转换为csv文件

我目前有一个包含所有Excel(.xlsx)文件的文件夹,并且使用RI希望使用"openxlsx"包(或某些变体)自动将所有这些文件转换为CSV文件.我目前有以下代码来转换其中一个文件并将其放在同一个文件夹中:convert("team_order\\team_1.xlsx", "team_order\\team_1.csv")

我想自动化该过程,以便它对文件夹中的所有文件执行,并且还删除当前的xlsx文件,因此只保留csv文件.谢谢!

csv r xlsx

5
推荐指数
2
解决办法
2万
查看次数

将行值转换为 r 中的列名

假设我有以下数据框:

a<-data.frame(A=3,B=9,C=10,D=6)
b<-data.frame(A="i3",B="i9",C="i10",D="i6")
c<-data.frame(A=3,B=9,C=10,D=6)
d<-data.frame(A=3,B=9,C=10,D=6)
e<-rbind(a,b,c,d)
print(e)
   A  B   C  D
1  3  9  10  6
2 i3 i9 i10 i6
3  3  9  10  6
4  3  9  10  6
Run Code Online (Sandbox Code Playgroud)

我正在尝试转换数据框,以便第二行中的值成为数据框的列名,因此产生以下结果:

print(f)
  i3 i9 i10 i6
1  3  9  10  6
3  3  9  10  6
4  3  9  10  6
Run Code Online (Sandbox Code Playgroud)

我写了以下内容:

f<-e[-2,]
colnames(f)<-e[2,]
Run Code Online (Sandbox Code Playgroud)

这似乎适用于这个小数据框;但是,对于较大的数据帧,它似乎无法正常工作。例如,以下是较大数据框的片段:

print(results2t)
                     V1    V2    V3
analysisID          118   118   118
Node                20    20    20
Dependent_Variable  i1    i1    i1
Item                b1    b17   i10
Overall_B_value    -.03   .04  -.17 …
Run Code Online (Sandbox Code Playgroud)

r dataframe

5
推荐指数
1
解决办法
7246
查看次数

分解时间序列数据:“没有或少于 2 个周期”

我有一个字符串,我正在尝试分解时间序列数据。每个数据点对应于给定月份的开始日期,如下所示:

A <- c(5,6,7,8,9,8,5,6,10,11)
Run Code Online (Sandbox Code Playgroud)

我使用以下方法将数据转换为时间序列:

A1 <- as.ts(A, frequency=12)
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用以下方法进行分解:

decompose(A1)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

时间序列没有或少于 2 个周期`

我还使用该zoo包创建了类似的时间序列,但得到了相同的结果。

有什么想法吗?

r time-series decomposition

5
推荐指数
1
解决办法
1万
查看次数

仅返回r中具有多于1个唯一值的列值

我目前有以下数据框:

datnotformeanfill<-
  data.frame(b8=c(1,2,2,2,1,1),b7=rep(1,6),
             b6=c(6,2,3,3,6,3),b5=c(6,3,3,3,4,3),
             b4=c(rep(6,5),1),b3=rep(0,6),
             b2=rep(1,6),b1=c(2,2,2,2,1,1))

> datnotformeanfill
  b8 b7 b6 b5 b4 b3 b2 b1
1  1  1  6  6  6  0  1  2
2  2  1  2  3  6  0  1  2
3  2  1  3  3  6  0  1  2
4  2  1  3  3  6  0  1  2
5  1  1  6  4  6  0  1  1
6  1  1  3  3  1  0  1  1
Run Code Online (Sandbox Code Playgroud)

我试图使用whichunique函数的组合来仅返回具有多于1个唯一值的列,但我不完全确定如何使用这些(或者可能是其他一些函数)来返回列.任何帮助,将不胜感激.谢谢!

r

4
推荐指数
1
解决办法
806
查看次数

防止R中的grep处理"." 作为一封信

我有一个包含类似于以下内容的字符向量:

text <- c("ABc.def.xYz", "ge", "lmo.qrstu")
Run Code Online (Sandbox Code Playgroud)

我想在之前删除所有内容.:

> "xYz" "ge" "qrstu"
Run Code Online (Sandbox Code Playgroud)

但是,这个grep功能似乎.是一封信:

pattern <- "([A-Z]|[a-z])+$"

grep(pattern, text, value = T)

> "ABc.def.xYz" "ge"          "lmo.qrstu" 
Run Code Online (Sandbox Code Playgroud)

该模式在其他地方有效,例如在regexpal上.

我怎样才能grep达到预期的效果?

regex grep r character

4
推荐指数
2
解决办法
350
查看次数

数学的tm :: findAssocs这个函数是如何工作的?

我一直在使用findAssoc()textmining(tm包),但意识到我的数据集似乎不对.

我的数据集是保存在csv文件的一列中的1500个开放式答案.所以我像这样调用数据集,并使用典型的数据集tm_map使其成为语料库.

library(tm)
Q29 <- read.csv("favoritegame2.csv")
corpus <- Corpus(VectorSource(Q29$Q29))
corpus <- tm_map(corpus, tolower)
corpus <- tm_map(corpus, removePunctuation)
corpus <- tm_map(corpus, removeNumbers)
corpus<- tm_map(corpus, removeWords, stopwords("english"))
dtm<- DocumentTermMatrix(corpus)

findAssocs(dtm, "like", .2)
> cousin  fill  ....
  0.28    0.20      
Run Code Online (Sandbox Code Playgroud)

Q1.当我找到与之关联的术语时like,我没有看到输出like = 1作为输出的一部分.然而,

dtm.df <-as.data.frame(inspect(dtm))
Run Code Online (Sandbox Code Playgroud)

此数据框由1500个obs组成.1689变量..(或者是因为数据保存在一行csv文件中?)

Q2.尽管cousinfill出现了一次当目标项like出现了一次,比分是这样的不同.他们不应该一样吗?

我想找到数学findAssoc()但却没有成功.任何建议都非常感谢!

r text-mining

3
推荐指数
2
解决办法
8919
查看次数

使用r中的grep或grepl选择基于列的第一个字母的列

我试图使用该dplyr包来选择以i开头的所有列.我有以下代码:

dat<-select(newdat1,starts_with("i"))
Run Code Online (Sandbox Code Playgroud)

并且我的数据的名称是:

> colnames(newdat)
[1] "i22" "i21" "i20" "i24"
Run Code Online (Sandbox Code Playgroud)

在这种情况下,这只是一个巧合,它们都以i开头,因为在其他情况下会有更大的变化; 因此,我想自动化这个过程.问题是我的代码使用dplyr是正确的; 但是,我遇到了包的问题,​​所以我想知道是否/如何用grep或grepl完成相同的任务,或者任何真正使用基础包的事情.谢谢!

grep r multiple-columns grepl

3
推荐指数
1
解决办法
2860
查看次数