在使用rpy2包将保存在R中的dataframe转换为Python时,我遇到了一个问题。
import os
os.environ['R_HOME'] = '/Library/Frameworks/R.framework/Resources'
import rpy2.robjects as ro
from rpy2.robjects import pandas2ri
# define a trivial dataframe in R
ro.r('n = c(1,2)')
ro.r("b = c(NA,'def')
在线性模型函数中,可以这样写:
result <- lm(r ~ N, data = ds)
该函数知道在dataframe ds中查找变量r和N
我编写了一个名为Check.Data的函数。自变量ri和ni是数据文件ds中的变量。
Check.Data(ri = ds$r, ni = ds$N, data = ds) #This runs
Check.Data(ri = r, ni = N, data = ds) #this does not
对函数的第二次调用没有运行,因为它找不到r: Check.Data(ri = r,ni = N,data = ds)中的错误:找不到对象
在R中:我如何循环多个列并使用一个定制的函数,该函数接受来自每个列的参数并相应地修改这些列?
例如,我有以下数据:
> head(runTimeSep)
hours h minutes min
1 70 min NA <NA>
2 21 min NA <NA>
3 106 min NA <NA>
4 75 min NA <NA>
5 14 min NA <NA>
6 82 min NA <NA>
7 1 h
我想在向量中保留最大值。R码写在下面。如何修复此代码,使其无错误地运行?
dat在数据帧中。
dat=c(3, 5, 4, 2, 8, NA, NA, 9, 10, 3)
期望产出为MaxRuns=c(3,5,5,5,8,8,8,9,10,10)
maxValue=function(dat){
maxv=0
for (i in 1:10) MaxRuns(i)=0
for (i in 1:10){
if dat(i) > maxv {
maxv=dat(i) }
MaxRuns(i)=maxv
}
return(maxv)
}
maxValue<-maxValue(dat)
ma
有什么优雅的解决方案可以在不删除NA所在的行或列的情况下从NA值中清除数据?
示例:
输入数据
C1 C2 C3
R1 A <NA> <NA>
R2 <NA> A <NA>
R3 <NA> <NA> A
R4 B <NA> <NA>
R5 <NA> B <NA>
R6 <NA> <NA> <NA>
R7 C <NA> B
R8 C
如果我在R有这样的数据,
1 2 abc bh abd NA NA
2 3 abc NA NA NA NA
3 4 NA NA ad yu ae
...................
我希望在列1和列2中获得这些值,它们在列的其余部分中有多个值。例如,在这里,1 2有3个值,3 4也有3个值,2 3只有一个值,rest是NA。所以,我想要1 2和3 4。我怎么才能在R里做到呢?谢谢!
我已经处理了一个R数据文件:
import rpy2.robjects as ro
from rpy2.robjects.packages import importr
from rpy2.robjects import pandas2ri
from rpy2.robjects.conversion import localconverter
pandas2ri.activate()
import pandas as pd
%%R
n = c(2, 3, 5)
s = c("aa", "bb", "cc")
b = c(TRUE, FALS
我想循环遍历数据帧中的一个列,并检查一个条件,然后替换0或1。代码是:
for (i in v$R){
if( is.na(v$R) ==TRUE ){v$V5 = 0}else{v$V5=1}
}
但我犯了个错误。名为“v”的数据框架如下所示。V5有NA值,如果R列中的值是NA,我想用0替换,否则替换为1。我怎么做呢?
A B R V5
1 2 3 NA
4 5 NA NA
我有一个R文件,它导入一个文件,执行一些数据操作,执行逻辑回归模型,然后将这些结果保存到txt文件中。但是,当我从命令行运行该文件时,我得到以下错误消息,并且不知道发生了什么。
anonymous@anonymous-Latitude-E6520:~/Downloads$ R --no-save < Auto_Model.r > out.txt
Warning message:
NAs introduced by coercion
Error in if (x == "\\N") NA else if (x > 1 & x < 6999)
我使用的数据集记录了被调查者的种族。应答记录在多个变量之间,被调查者可以选择多个变量。示例:
Black White Asian Hispanic
1 NA NA NA
NA 1 NA NA
NA NA NA 1
NA NA 1 1
在最后一行中,答辩人会选择亚裔和拉美裔。
我想做的是:
( A)将这些列折叠成一个单一的种族变量,不同的代表不同种族的数字(即黑人为1,白人为2等等)。
( B)使任何报告多列的人都被指定为“多列”。
我有点R新手,所以任何帮助都会非常感谢!
我试图从这篇文章中提取字符91到180:
外圈-6°雷格fra Deuter er den perfekte sovepose,der har det med at stritte med arme og ben,n r du sover,og f ler og h mmet I en almindelig。den er nemlig af弹力器,som soveposen at blive op至25% bredere,结束Den umiddelbart ser ud til at v re.
因此,输出将如下所示:
itte med arme og ben,n r du arme
我想使用“.RData”文件中的数据执行一些python函数。我使用的是'pyreadr‘python包。
以下是R代码的示例
library(data.table)
# Example
data <- data.table(x_num=c(1,1.5,2),
x_int=c(1,2,3))
data$x_int <- as.integer(data$x_int) # Making sure the data is in integer type
data_missing <- data.table(x_num=c(1.5
当将Inf和-Inf与NA_real_进行比较时,返回的一些值使我感到惊讶。
具体地说:
NA_real_ <= Inf
#[1] NA
-Inf <= NA_real_
#[1] NA
for NA (help(NA))的第一句话是
NA是一个长度为1的逻辑常数,它包含一个缺失的值指示符。
我认为必须有一些不小于或等于Inf的值,以及一些不大于或等于-Inf的值。这些价值观是什么?你如何在R中表示它们?请提供完整的清单。
我对NaN有些熟悉,但是这些不是来自于产生结果的计算,而这些结果只是超出了double可以存储的适当值的范围。我不知道Inf - Inf到底是什么,但
我想在R中处理时间序列,但我在一开始就被卡住了,因为我在频率上有问题。我有30年的月度数据(开始日期= 1988,结束日期= 2018),但有时会有漏洞:我有几个月或几年没有数据。我不喜欢为了填补这个漏洞而进行插值或中介,而只是使用na.omit省略空的月/年。问题是,我将有几年有12个月,而另一些则有更少的月。我的问题is..How我现在可以确定并使用我的频率了吗?
下面是两年的例子:
YEAR MONTH Temp Salt
1988 1 NA NA
1988 2 NA NA
1988 3 NA NA
1988 4 NA NA
我们正在尝试编译我们的C代码,其中包括用于各种操作(计时、产生输出波形和测量输入频率)的大量汇编。
我们的几个ASM操作总是得到相同的错误:
“REL区域中的.org或指令/助记符错误”
在下面的代码中,我们得到了3个错误(我注释了它们发生了哪些行,以及我们得到的错误到底是什么。谢谢!
void getFrequency(int *freqHi, int *freqLo)
{
__asm
;
; A program that measures the frequency at pin T0 (P1.2)
ljmp GetFreq
Wait1s:
我有一个名为list of data.frame的m (参见)。这些data.frames中的列data.frames都是NA。
但后来,我计算了其中一些r,并将它们存储为一个名为L的列表。
我想知道如何实现以下目标?:
(1)如果L中的任何列表条目(即L[[1]]、L[[2]]、.)以数字开头但紧接在NA之后,则用该数字替换NA。
(2)将所有新的r(存储在L中)放回r列中,在data.frames m的原始列表中。
D <- read.csv("https://raw.githubusercontent.com/izeh/m/master/g.csv", h = T)