R(二)——近期记录

本文介绍了R语言中使用apply和sapply计算列的NA数量,强调了apply函数将行或列视为向量处理的特点,以及如何利用行名和列名提高代码可读性。此外,还分享了文件移动的实现方法和dplyr包在数据处理中的优势,包括按行合并向量和正则表达式提取字符串中的特定数值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原创:hxj7

计算各列的NA数量

这个可以用apply或者sapply快速实现

> df <- data.frame(col1=c(1, NA, 2), col2=c(2, 3, NA), col3=c(NA, NA, 3))
> df
   col1 col2 col3
1    1    2   NA
2   NA    3   NA
3    2   NA    3

> sapply(df, function(v) sum(is.na(v)))
col1 col2 col3 
  1    1    2 

或者:

> apply(df, 2, function(v) sum(is.na(v)))
col1 col2 col3 
  1    1    2 

关于apply的说明

apply对一行或者一列是按照向量来处理的

假设要对每一行求和

> df <- data.frame(a=c(1, 2), b=c(3, 4), d=c("5", "6"), stringsAsFactors=F)
> str(df)
'data.frame':   2 obs. of  3 variables:
 $ a: num  1 2
 $ b: num  3 4
 $ d: chr  "5" "6"
> apply(df, 1, function(v) sum(as.numeric(v)))
[1]  9 12

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值