Tag: r

将LaTeX变成R图

我想添加LaTeX排版元素的R (例如:标题,轴标签,注释等)的元素使用base/lattice或ggplot2的组合。 问题: 有没有办法让LaTeX使用这些软件包进行绘图,如果是的话,它是如何完成的? 如果没有,是否有额外的软件包来完成这一点。 例如,在Python matplotlib通过text.usetex包编译LaTeX ,如下所述: http : //www.scipy.org/Cookbook/Matplotlib/UsingTex 有没有类似的过程,可以在R产生这样的情节?

将文本行写入R中的文件

在R脚本语言中,我如何写文本行,例如以下两行 Hello World 到一个名为“output.txt”的文件?

在R中清除控制台的function

我想知道是否有清除R中的控制台,特别是RStudio的function。 我正在寻找一个function,我可以input到控制台,而不是一个键盘快捷键。 有人已经从2010年的这个StackExchange文章中提供了这样的function。 不幸的是,这取决于RCom包,并且不能在Mac OS X上运行。

如何从包含n * NA的数据框中删除行

我有一些大数据集,大约有10列,〜200000行。 并不是所有的列都包含每行的值,但是至less有一列必须包含该行所存在的值,我想设置一个阈值,以允许一行中允许有多less个NA 。 我的数据框看起来像这样: ID qrstuvwxyz A 1 5 NA 3 8 9 NA 8 6 4 B 5 NA 4 6 1 9 7 4 9 3 C NA 9 4 NA 4 8 4 NA 5 NA D 2 2 6 8 4 NA 3 7 1 32 我希望能够删除包含多个包含NA的单元格的行以获得 ID qrstuvwxyz A 1 […]

我怎样才能更快速地对观察组进行排名呢?

我有一个非常简单的问题,但是我可能没有想到vector-y足以有效地解决这个问题。 我尝试了两种不同的方法,现在已经在两台不同的计算机上循环了很长一段时间。 我希望我能说比赛让比赛变得更加激动人心,但是……呃。 在组中排名观察 我有很长的数据(每人多行,每人观察一行),而且我基本上想要一个variables,告诉我这个人已经被观察到的频率。 我有前两列,想要第三个: person wave obs pers1 1999 1 pers1 2000 2 pers1 2003 3 pers2 1998 1 pers2 2001 2 现在我正在使用两个循环方法。 两个都极其缓慢(150k行)。 我确定我错过了一些东西,但我的search查询并没有真正帮助我(很难说出问题)。 感谢任何指针! # ordered dataset by persnr and year of observation person.obs <- person.obs[order(person.obs$PERSNR,person.obs$wave) , ] person.obs$n.obs = 0 # first approach: loop through people and assign range unp […]

select相应的行

我的问题似乎很简单,但我无法解决,因为小时… 我有这样一个matrix: [,1] [,2] [1,] 1 2 [2,] 2 1 [3,] 2 1 [4,] 3 4 我想select具有相同信息的行,而不考虑列的顺序。 例如row1(1; 2)和row2(2; 1)。 那么,我想删除它们,除了一个。 我已经写了这个function,但它不工作… f<-function(x){ i<-1 repeat { a<-c() a<-c(which(x[i,1]==x[,2] & x[i,2]==x[,1])) if(!is.null(a)) {x<-x[-c(a),]} if(i>=nrow(x)) {break} else {i<-i+1} } x } f(data) 有人可以给我一个提示呢?

为什么和在哪里\ n换行符介绍c()?

希望有人能帮助我理解为什么错误\ n字符出现在我在R中创build的string的向量中。 尝试导入和清理宽度固定的非常宽的数据文件( http://www.state.nj.us/education/schools/achievement/2012/njask6/ ,“用于数据运行的文本文件”)。 跟着使用read.fwf的UCLA教程和这个出色的SO问题在导入后给列名称。 由于该文件非常宽,列标题是LONG – 所有文件一起,只有29,800个字符。 我把它们作为一个简单的string向量传递: column_names <- c(…) 我会把这个丑陋的垃圾堆放在这里,但是我把所有的东西都放在了pastebin上 。 当我注意到我的一些子集正在返回0行时,正在清理并转换一些variables进行分析。 在困惑之后(我拼错了什么?)它意识到,不知怎的,一串'\ N'换行符被引入到我的列标题中。 如果我遍历我创build的column_names向量 for (i in 1:length(column_names)) { print(column_names[i]) } 我看到第81行中间的第一个换行符 – SPECIAL \ nEDUCATION SCIENCE编号登记科学 我试图解决这个问题的途径: 1)关于我的环境吗? 我在R中使用了普通的脚本编辑器,而且我的行还是换行 – 但是屏幕上的分隔符与\ n字符的位置不匹配,这对我来说意味着它不是R脚本编辑器。 2)是否有GUI设置? 做了一些search ,但找不到任何东西。 3)有没有一种模式? 似乎换行符每插入大约4000个字符。 有没有读过R / S原语来试图弄清楚这是否与基本的R数据结构有关,但是很快就在我头上。 我试图把长串分成较短的块 ,然后把它们合并起来,似乎解决了这个问题。 column_names.1 <- c(…) column_names.2 <- c(…) column_names_combined […]

如何从group_by按组编号标记数据表?

我有一个tbl_df在哪里我想group_by(u,v)每个不同的整数组合观察(u,v)。 编辑:这是通过在dplyr 0.4.0中添加group_indices()来解决的 a)然后我想要为每个不同的组分配一些任意的不同数字标签= 1,2,3 …例如组合(u,v)==(2,3)可以得到标签1,(1,3)可以得到2,等等。 如何用一个mutate()做到这一点,没有三步总结和自我连接? dplyr有一个简洁的函数n() ,但是它给出了组内的元素数量,而不是组的总数量 。 在data.table这将被简单地称为.GRP 。 b)其实我真的想要分配一个string/字符标签('A','B',…)。 但是按整数编组是很好的,因为我可以使用integer_to_label(i) ,如下所示。 除非有一个聪明的方法来合并这两个? 但是不要为这部分出汗。 set.seed(1234) # Helper fn for mapping integer 1..26 to character label integer_to_label <- function(i) { substr("ABCDEFGHIJKLMNOPQRSTUVWXYZ",i,i) } df <- tbl_df(data.frame(u=sample.int(3,10,replace=T), v=sample.int(4,10,replace=T))) # Want to label/number each distinct group of unique (u,v) combinations df %>% group_by(u,v) %>% mutate(label = […]

读取多个文件并根据用户input计算平均值

我想在R中写一个函数,它需要3个input: 目录 污染物 ID 我的电脑上有一个目录,里面装满了CSV文件,比如300多个。这个函数的function如下: pollutantmean <- function(directory, pollutant, id = 1:332) { ## 'directory' is a character vector of length 1 indicating ## the location of the CSV files ## 'pollutant' is a character vector of length 1 indicating ## the name of the pollutant for which we will calculate the ## mean; either […]

按组计算连续行中的值之间的差异

这是我的df (data.frame): group value [1] 1 10 [2] 1 20 [3] 1 25 [4] 2 5 [5] 2 10 [6] 2 15 … 我需要计算按组连续排列的值之间的差异。 所以,我需要一个结果。 group value diff [1] 1 10 NA (because there is a no previous value) [2] 1 20 10 (value[2]-value[1]) [3] 1 25 5 (value[3]-value[2]) [4] 2 5 NA (because group […]