小编lok*_*art的帖子

如何替换某些字符周围的空白?

我正在制作一些自由文本,因为我需要做一些数据清理,我有一个问题(很多,我稍后会问,我肯定):

我需要更换以下组合:

[ ; ] (标点符号前后的空格)

[;] (标点符号前后没有空格)

[ ;] (标点符号前只有空格)

[; ] (标点符号后面只有空格)

...标点符号可以是其中之一[;:,.].我怎么能用正则表达式做到这一点?

regex

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

为R中的数据帧中的每一行数据创建哈希值

我正在探索如何更有效地比较R中的两个数据帧,我想出了哈希.

我的计划是使用digestin digestpackage 为两个具有相同列的数据帧中的每一行数据创建哈希,并且我认为对于任何2个相同的数据行,哈希应该是相同的.

我尝试使用以下代码为每行数据提供唯一的哈希值:

for (loop.ssi in (1:nrow(ssi.10q3.v1)))
    {ssi.10q3.v1[loop.ssi,"hash"] <- digest(as.character(ssi.10q3.v1[loop.ssi,]))
     print(paste(loop.ssi,nrow(ssi.10q3.v1),sep="/"))
     flush.console()
    }
Run Code Online (Sandbox Code Playgroud)

但这很慢.

我在比较数据帧时的方法是否正确?如果是,是否有任何关于加快上述代码的建议?谢谢.

UPDATE

我已经更新了以下代码:

ssi.10q3.v1[,"uid"] <- 1:nrow(ssi.10q3.v1)   

ssi.10q3.v1.hash <- ddply(ssi.10q3.v1,
                          c("uid"),
                          function(df)
                             {df[,"uid"]<- NULL
                              hash <- digest(as.character(df))
                              data.frame(hash=hash)
                             },
                          .progress="text")     
Run Code Online (Sandbox Code Playgroud)

uid为"独特"目的自行生成了一个专栏.

database hash r

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

R中的舍入数字

可能重复:
如何在R中进行"漂亮的舍入"?

比方说1.036315,我有一个数字,我希望将其舍入到第一个小数位,这样结果就是1.0,这不应该是1,因为我还想说明近似值精确到小数点后第一位.

但是当我使用时round(1.036315, digits=1),R给了我1,这是我不想要的.

让R呈现我想要的东西的任何方式?

r rounding

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

清除SPSS中的内存,就像在R中所做的一样

作为R用户,我现在正在尝试学习SPSS语法。

我s rm(list=ls())在R脚本的存在处添加命令,以确保在我继续工作之前R为空。

SPSS是否有类似的命令?谢谢。

r spss

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

列出Stata中的前几行

我已经使用R了很多,我知道我可以使用head(data[,"column"])head(data)来查看数据的前几行/单元格。

如何在Stata中做到这一点?

stata

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

如何转换Stata中的日期?

我有一个日期格式如下,我使用R将其从字符串转换为日期

date <- "20 Nov 2010 21:44:00:000"
strptime(date,"%d %b %Y %H:%M:%S")
Run Code Online (Sandbox Code Playgroud)

我想在Stata做,但是怎么样?我在Stata试过这个:

gen time_2 = date(time,"DMYhms#")
Run Code Online (Sandbox Code Playgroud)

但这不行,为什么呢?谢谢.

datetime stata

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

使用R中的gsub在两个斜杠之间剪切字符

我有一个由R捕获的文件名,如下所示:

"0097_abcdef/0097_0/0097_0_04_bed.dbf"
Run Code Online (Sandbox Code Playgroud)

我需要在两个斜线/(即0097_0)之间选择一个术语,但我已经尝试过gsub(".*/","",dbf.files[1]),但它给了我"0097_0_04_bed.dbf",这不是我想要的.

有人可以帮忙吗?谢谢.

regex r

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

使用ggplot2绘制带孔的土地

我从这里这里问过同样的问题,但仍然无法解决我的问题.我想我需要提出整个问题并寻求帮助,而不是将其分解成小部分.

我有一个数据框,我将其导出到csv,可以在http://pastebin.com/SNT9Ykt7找到.

chart <- ggplot(data=map.shp,aes(x=long,y=lat))

### PART1 START ###
chart <- chart + geom_polygon(data=map.shp,aes(x=long,y=lat,group=id),colour=rgb(162,159,140,maxColorValue=255),fill=rgb(233,235,232,maxColorValue=255),size=0.1)
### PART1 END ###

### PART2 START ###    
map.group <- unique(map.shp[,"group"])
for (loop in (1:length(map.group))) {
  temp.shp <- map.shp[map.shp[,"group"]==map.group[loop],]
  temp.colour <- "red"
  if (unique(temp.shp[,"hole"])=="TRUE") {
    temp.colour <- "blue"
  }
  chart <- chart + geom_polygon(data=temp.shp,aes(x=long,y=lat,group=id,order=group),colour=rgb(162,159,140,maxColorValue=255),fill=temp.colour,size=0.1)
}
### PART2 END ###

chart <- chart + opts(panel.background=theme_rect(colour=rgb(190,225,247,maxColorValue=255),fill=rgb(190,225,247,maxColorValue=255)),                      
                      panel.grid.major=theme_blank(),
                      panel.grid.minor=theme_blank(),
                      panel.border=theme_blank(),
                      plot.background = theme_blank(),
                      axis.line=theme_blank(),
                      axis.text.x=theme_blank(),
                      axis.title.x=theme_blank(),
                      axis.text.y=theme_blank(),
                      axis.title.y=theme_blank(),
                      axis.ticks=theme_blank())
chart <- chart + …
Run Code Online (Sandbox Code Playgroud)

r polygon ggplot2

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

将输出从一个R会话复制到另一个R会话

我现在正在进行2次R会话,每次会话中都有一个向量,但内部略有不同,请说:

会话1: temp1 <- c(1:10)

会议2: temp2 <- c(2:11)

我想将temp1session1从session1 复制到session2并执行%in%,但我不想print(temp1)在session1中使用ctrl-c它,手动修改输出然后ctrl-v在session2中.

我见过有人使用在R会话中创建输出的泛型函数,然后我ctrl-c直接输出ctrl-v它在另一个R会话中,并且该对象已经存在.但我不记得这个功能了.

谢谢.

r output

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

带有按单独变量排序的堆积条形图的 ggplot

我正在尝试创建一个“订单”堆积条形图,每个堆栈由一个变量着色并由另一个变量排序,请找到我的示例如下:

library(ggplot2)
library(dplyr)

data(iris)

chart.df.st00 <- iris %>%
  as_tibble %>%
  mutate(`Sepal.Length`=round(`Sepal.Length`)) %>%
  count(Species,`Sepal.Length`) %>%
  mutate(`Sepal.Length`=as.character(`Sepal.Length`)) %>%
  group_by(Species) %>%
  mutate(percent=n/sum(n)*100) %>%
  arrange(desc(n)) %>%
  mutate(rank=1:n()) %>%
  ungroup %>%
  mutate(rank=paste(Species,rank,sep='-')) 

chart.df.st01 <- chart.df.st00 %>%
  left_join(chart.df.st00 %>%
              distinct(`Sepal.Length`) %>%
              mutate(color=colorRampPalette(
                RColorBrewer::brewer.pal(length(unique(chart.df.st00$`Sepal.Length`)),'Set1'))(length(unique(chart.df.st00$`Sepal.Length`)))))

chart.color1.st00 <- chart.df.st01 %>%
  distinct(rank,color) %>%
  arrange(rank)

chart.color1.st01 <- chart.color1.st00$color
names(chart.color1.st01) <- chart.color1.st00$rank

chart1 <- ggplot(data=chart.df.st01,
       aes(x=1,y=percent)) +
  geom_bar(aes(fill=rank),stat='identity') +
  scale_fill_manual(values=chart.color1.st01) +
  facet_wrap(.~Species,ncol = 1) +
  scale_y_reverse(breaks=c(0,25,50,75,100),labels=c(100,75,50,25,0)) +
  coord_flip()

chart.color2.st00 <- chart.df.st01 %>%
  distinct(color,Sepal.Length) %>%
  arrange(Sepal.Length)

chart.color2.st01 <- chart.color2.st00$color
names(chart.color2.st01) <- chart.color2.st00$`Sepal.Length`

chart2 …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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

标签 统计

r ×7

ggplot2 ×2

regex ×2

stata ×2

database ×1

datetime ×1

hash ×1

output ×1

polygon ×1

rounding ×1

spss ×1