小编Rom*_*rik的帖子

试图根据点之间的距离绘制圆圈

我试图绘制一些圆圈,我有点希望它们会与某些点交叉,唉...

library(maptools)
library(plotrix)
xy <- matrix(runif(20, min = -100, max = 100), ncol = 2)
distance <- spDistsN1(xy, xy[1, ])
plot(0,0, xlim = c(-100, 100), ylim = c(-100, 100), type = "n")
points(data.frame(xy))
points(xy[1, 1], xy[1, 2], pch = 16)
draw.circle(xy[1, 1], xy[1, 2], radius = distance)
Run Code Online (Sandbox Code Playgroud)

上面的代码执行以下操作:

  • 创建10个随机点并选择一个(第一个)点作为"锚点".
  • 计算从锚点到所有其他点的距离.这将是我们的"半径"
  • 使用上面计算的半径距离在锚点周围绘制圆圈.
  • 划痕为什么圆圈不与用于计算半径的点相交. 圆圈与用于计算距离的点不相交

geometry r euclidean-distance

6
推荐指数
1
解决办法
735
查看次数

在R中聚合,重组每小时时间序列数据

我在R中的数据框中有一年的小时数据:

> str(df.MHwind_load)   # compactly displays structure of data frame
'data.frame':   8760 obs. of  6 variables:
 $ Date         : Factor w/ 365 levels "2010-04-01","2010-04-02",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ Time..HRs.   : int  1 2 3 4 5 6 7 8 9 10 ...
 $ Hour.of.Year : int  1 2 3 4 5 6 7 8 9 10 ...
 $ Wind.MW      : int  375 492 483 476 486 512 421 396 456 453 ... …
Run Code Online (Sandbox Code Playgroud)

r time-series

6
推荐指数
2
解决办法
2916
查看次数

R:条件expand.grid函数

我想找到符合特定条件的矢量元素的所有组合.函数expand.grid返回所有可能的组合,而不检查特定条件.这是可能使用expand.grid功能后,测试特定条件,但在某些情况下可能的组合的数量太大与expand.grid生成它们.因此,有一个功能允许我在生成所有可能的组合时检查条件.

这是问题的简化版本:

A <- seq.int(12, from=0, by=1)*15
B <- seq.int(27, from=0, by=1)*23
C <- seq.int(18, from=0, by=1)*18
D <- seq.int(33, from=0, by=1)*10

out<-expand.grid(A,B,C,D) #out is a dataframe with 235144 x 4 as dimensions
idx<-which(rowSums(out)<=400 & rowSums(out)>=300) #Only a small fraction of 'out' is needed
results <- out(idx,)
Run Code Online (Sandbox Code Playgroud)

r

6
推荐指数
1
解决办法
1476
查看次数

如何使用merge来绑定两个数据帧

假设我有两个数据帧:

df1 <- data.frame(matrix(rnorm(10*10),ncol=10))
df2 <- data.frame(matrix(rnorm(10*10),ncol=10))
colnames(df1) <- 1:10
colnames(df2) <- 11:20
Run Code Online (Sandbox Code Playgroud)

如何使用mergecbind这些(我已经知道了cbind,但我很感兴趣的应用merge点击这里).

merge r dataframe

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

如何替换geom_text指南(图例)的传奇"子弹"

我想替换传说(指南)中的'子弹' geom_text.现在它是一个倾斜的a,但我想要一个大的胖圈或正方形或任何其他形状,将强调颜色(更多).

library(ggplot2)

majdf <- data.frame(lvl = rep(c("A", "B"), each = 50), val = c(rnorm(50, 1), rnorm(50, 3)))
majtxt <- data.frame(species = c("sp1", "sp2", "sp3"), geq = c(0.01, 2, 2.2))

ggplot(majdf, aes(x = val)) +
  geom_density() +
  geom_vline(data = majtxt, aes(xintercept = geq)) +
  geom_text(data = majtxt, aes(x = geq, y = 0.2, label = geq, color = species), angle = 90) +
  facet_wrap(~ lvl)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r ggplot2

6
推荐指数
2
解决办法
1271
查看次数

如何将knitr缓存导入R session的全局环境

我创建了一个R markdown(.rmd),当文件被编织时,它包含20个R块,其中一些是缓存的.编织后,R的全球环境仍然是空的.如何在不运行代码的情况下将缓存块中的内容导入到R的全局环境中?

caching r knitr

6
推荐指数
0
解决办法
102
查看次数

dplyr:取消选择的列

如何取消选择...自写函数参数中给出的列.(我还需要在另一个点选择列,所以只使用-in 指定列...不能解决我的问题.)

任何解决方案都是apreciated,select-helpers,manipulating quosures或expression,......

# very simple example data
test <- data.frame(a=1:3, b=1:3, c=1:3)

# function skeleton
testfun <- function(x, ...){
  y <- select(x, ...)
  z <- select(x, -...) # does of course not work like this
  return(list(y, z))   # just as an example
}

# calling the function to select different columns
testfun(test, a)
testfun(test, a, b)
Run Code Online (Sandbox Code Playgroud)

r dplyr tidyverse

6
推荐指数
1
解决办法
960
查看次数

在cbind或rbind之后丢失表的dimnames的名称

cbind或者rbind表格对象之后(例如,添加一个总和或某些边缘),dimnames的名称会丢失(请参阅参考资料y).我找到了这个"解决方法"但是想知道是否有一个解决方案,看起来不那么黑客.也许可以在飞行中完成的事情?我想保留课堂的对象table.

>   (x <- table(1:3, sample(1:3), dnn = c("rows", "cols")))
    cols
rows 1 2 3
   1 1 0 0
   2 0 0 1
   3 0 1 0
>   (y <- cbind(x, "4" = 4:6)) # "rows" and "cols" get lost
  1 2 3 4
1 1 0 0 4
2 0 0 1 5
3 0 1 0 6
> names(dimnames(y)) <- names(dimnames(x))
> y
    cols
rows 1 2 3 4
   1 …
Run Code Online (Sandbox Code Playgroud)

r names rbind

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

如何从python中的rpy2中的R数据框中选择列?

我在python中的rpy2中有一个数据帧,我想从中提取列.这个R代码的rpy2等价物是多少?

df[,c("colA", "colC")]

这可以获得第一列:

mydf.rx(1)

但是我如何拉出一组列,例如第1列,第3列和第5列?

mydf.rx([1,3,5])

不起作用.也不是:

mydf.rx(rpy2.robjects.r.c([1,3,5]))

python r dataframe rpy2

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

pandas 数据框 - 减少初始值

我正在将我的R一些东西移到Python,因此我必须使用pandas.DataFrames。有几件事我想优化。

假设我们有一张桌子

key value
abc 1
abc 2
abd 1
Run Code Online (Sandbox Code Playgroud)

我们想要得到一个 form 的字典{key -> list[values]}。这是我现在完成这项工作的方法。

from pandas import DataFrame
from StringIO import StringIO


def get_dict(df):
    """
    :param df:
    :type df: DataFrame
    """
    def f(accum, row):
        """
        :param accum:
        :type accum: dict
        """
        key, value = row[1]
        return accum.setdefault(key, []).append(value) or accum
    return reduce(f, df.iterrows(), {})


table = StringIO("key\tvalue\nabc\t1\nabc\t2\nabd\t1")
parsed_table = [row.rstrip().split("\t") for row in table]
df = DataFrame(parsed_table[1:], columns=parsed_table[0])
result = get_dict(df) …
Run Code Online (Sandbox Code Playgroud)

python reduce r dataframe pandas

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