小编Jaa*_*aap的帖子

删除data.frame中包含全部或部分NA(缺失值)的行

我想删除此数据框中的行:

a)包含NA所有列的s.下面是我的示例数据框.

             gene hsap mmul mmus rnor cfam
1 ENSG00000208234    0   NA   NA   NA   NA
2 ENSG00000199674    0   2    2    2    2
3 ENSG00000221622    0   NA   NA   NA   NA
4 ENSG00000207604    0   NA   NA   1    2
5 ENSG00000207431    0   NA   NA   NA   NA
6 ENSG00000221312    0   1    2    3    2
Run Code Online (Sandbox Code Playgroud)

基本上,我想获得如下的数据框.

             gene hsap mmul mmus rnor cfam
2 ENSG00000199674    0   2    2    2    2
6 ENSG00000221312    0   1    2    3    2
Run Code Online (Sandbox Code Playgroud)

b)只在某些列中包含NAs …

r filter missing-data dataframe r-faq

792
推荐指数
15
解决办法
139万
查看次数

如何在不丢失信息的情况下将因子转换为整数\数字?

当我将因子转换为数字或整数时,我得到基础级别代码,而不是值作为数字.

f <- factor(sample(runif(5), 20, replace = TRUE))
##  [1] 0.0248644019011408 0.0248644019011408 0.179684827337041 
##  [4] 0.0284090070053935 0.363644931698218  0.363644931698218 
##  [7] 0.179684827337041  0.249704354675487  0.249704354675487 
## [10] 0.0248644019011408 0.249704354675487  0.0284090070053935
## [13] 0.179684827337041  0.0248644019011408 0.179684827337041 
## [16] 0.363644931698218  0.249704354675487  0.363644931698218 
## [19] 0.179684827337041  0.0284090070053935
## 5 Levels: 0.0248644019011408 0.0284090070053935 ... 0.363644931698218

as.numeric(f)
##  [1] 1 1 3 2 5 5 3 4 4 1 4 2 3 1 3 5 4 5 3 2

as.integer(f)
##  [1] 1 1 3 2 5 …
Run Code Online (Sandbox Code Playgroud)

casting r r-faq

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

用于访问列表或数据框元素的方括号[]和双括号[[]]之间的区别

R提供了两种不同的方法来访问列表或data.frame- [][[]]运算符的元素.

两者有什么区别?在什么情况下我应该使用一个而不是另一个?

r extract list dataframe r-faq

490
推荐指数
10
解决办法
21万
查看次数

创建一个空的data.frame

我正在尝试初始化没有任何行的data.frame.基本上,我想为每个列指定数据类型并命名它们,但不会创建任何行作为结果.

到目前为止我能做的最好的事情是这样的:

df <- data.frame(Date=as.Date("01/01/2000", format="%m/%d/%Y"), 
                 File="", User="", stringsAsFactors=FALSE)
df <- df[-1,]
Run Code Online (Sandbox Code Playgroud)

这会创建一个data.frame,其中包含我想要的所有数据类型和列名的单行,但也会创建一个无用的行,然后需要将其删除.

有一个更好的方法吗?

r dataframe r-faq

448
推荐指数
12
解决办法
77万
查看次数

是否有用于查找模式的内置功能?

在R中,mean()median()是标准函数,可以满足您的期望. mode()告诉您对象的内部存储模式,而不是其参数中出现最多的值.但是有一个标准的库函数来实现向量(或列表)的统计模式吗?

statistics r r-faq

370
推荐指数
14
解决办法
25万
查看次数

如何添加前导零?

我有一组看起来像这样的数据:

anim <- c(25499,25500,25501,25502,25503,25504)
sex  <- c(1,2,2,1,2,1)
wt   <- c(0.8,1.2,1.0,2.0,1.8,1.4)
data <- data.frame(anim,sex,wt)

data
   anim sex  wt anim2
1 25499   1 0.8     2
2 25500   2 1.2     2
3 25501   2 1.0     2
4 25502   1 2.0     2
5 25503   2 1.8     2
6 25504   1 1.4     2
Run Code Online (Sandbox Code Playgroud)

我希望在每个动物ID之前添加零:

data
   anim sex  wt anim2
1 025499   1 0.8     2
2 025500   2 1.2     2
3 025501   2 1.0     2
4 025502   1 2.0     2
5 025503   2 1.8     2
6 …
Run Code Online (Sandbox Code Playgroud)

formatting r number-formatting r-faq

320
推荐指数
4
解决办法
22万
查看次数

优雅的方法来检查丢失的包并安装它们?

这些天我似乎与共同作者分享了很多代码.他们中的许多人都是初级/中级R用户,并没有意识到他们必须安装他们尚未拥有的软件包.

是否有一种优雅的方式来调用installed.packages(),将其与我正在加载的那些进行比较并在安装时如果丢失?

packages r r-faq

307
推荐指数
17
解决办法
12万
查看次数

为什么这些数字不相等?

以下代码显然是错误的.有什么问题?

i <- 0.1
i <- i + 0.05
i
## [1] 0.15
if(i==0.15) cat("i equals 0.15") else cat("i does not equal 0.15")
## i does not equal 0.15
Run Code Online (Sandbox Code Playgroud)

floating-point r floating-accuracy r-faq

263
推荐指数
4
解决办法
4万
查看次数

测试字符是否在字符串中

我正在尝试确定字符串是否是另一个字符串的子集.例如:

chars <- "test"
value <- "es"
Run Code Online (Sandbox Code Playgroud)

如果"value"作为字符串"chars"的一部分出现,我想返回TRUE.在以下场景中,我想返回false:

chars <- "test"
value <- "et"
Run Code Online (Sandbox Code Playgroud)

regex string r r-faq

248
推荐指数
8
解决办法
39万
查看次数

如何一次导入多个.csv文件?

假设我们有一个包含多个data.csv文件的文件夹,每个文件包含相同数量的变量,但每个变量包含不同的时间.R中有没有办法同时导入它们而不必单独导入它们?

我的问题是我有大约2000个数据文件要导入,只需使用代码就可以单独导入它们:

read.delim(file="filename", header=TRUE, sep="\t")
Run Code Online (Sandbox Code Playgroud)

不是很有效率.

csv import r r-faq

195
推荐指数
9
解决办法
29万
查看次数