R
可以在CRAN(Comprehensive R Archive Network,
http://cran.r-project.org
)上免费下载。
R 语言特点
-
R 语言环境软件属于 GNU 开源软件,兼容性好、使用免费
-
语法十分有利于复杂的数学运算
-
数据类型丰富,包括向量、矩阵、因子、数据集等常用数据结构
-
代码风格好,可读性强
虽然 R 主要用于统计分析或者开发统计相关的软件,但也有人用作矩阵计算。其分析速度可媲美专用于矩阵计算的自由软件 GNU Octave 和商业软件 MATLAB。
R是一种编程语言,也是统计计算和绘图的环境,它汇集了许多函数,能够提供强大的功能。
R语言软件界面简陋,通常不直接使用,而是用图形界面的Rstudio。
RStudio是免费提供的开源集成开发环境(IDE)。RStudio提供了一个具有很多功能的环境,使R更容易使用,是在终端中使用R的绝佳选择。
RStudio是一款
R语言
的IDE,R自带的环境操作起来可能不是方便,而Rstudio很好地解决了这个问题,而且它还具有调试、可视化等功能,支持纯R脚本、Rmarkdown (脚本文档混排)、Bookdown (脚本文档混排成书)、Shiny (交互式网络应用)等。
-
包是R函数、数据、预编译代码以一种定义完善的格式组成的集合。计算机上存储包的目录称为库(library)。函数.libPaths()能够显示库所在的位置, 函数library()则可以显示库中有哪些包。
-
R自带了一系列默认包(包括base、datasets、utils、grDevices、graphics、stats以及methods),它们提供了种类繁多的默认函数和数据集。其他包可通过下载来进行安装。安装好以后,它们必须被载入到会话中才能使用。命令search()可以告诉你哪些包已加载并可使用。
-
目前有几千个称为包(package)的用户贡献模块可从
http://cran.r-project.org/web/packages
下载。
R语言使用na.omit函数删除向量数据中的缺失值(NA值)
# 删除向量、矩阵、数据框中的NA值
x <- c(1,2,NA,4,5,NA,7,6,8,9)
y <- na.omit(x);print(y);
print(length(y));print(class(y))
dim(x) <- c(5,2)
print(x)
print(na.omit(x)) # 删除数组中的NA值的规则是删除含有NA值的整行数据
# 交易品的历史数据中可能存在NA数值,使用na.omit()函数将会删除整条历史记录
安利一个R语言的优秀博主及其CSDN专栏:
博主博客地址
博主R语言专栏地址(R语言从入门到机器学习、持续输出已经超过1000篇文章)
一般在项目中,数据可能会因为设备故障、未作答问题或误编码数据的原因不完整。在R中NA(not available,不可用)表示缺失值。
函数is.na()允许你检测缺失值是否存在。该函数作用于检测对象之后将返回一个相同大小的对象,其中缺失值的位置被改写为true,其他不是缺失值的位置则为false。
> which(is.na(nhanes2)) #返回缺失值的位置
> sum(is.na
R语言剔除包含NA的行或列前言NA值的影响去除NA值
在数据分析的过程中,数据的前处理是非常重要的。数据中出现“NA”是非常常见的,“NA”指“Not Available”,出现NA常常会影响我们进行数据分析,这是因为NA是会传染的。
NA值的影响
看以下例子:
> a <- c(1,2,3,4,5)
> mean(a)
[1] 3
如果出现NA,情况就不一样了
> a <- c(1,2,3,4,5,NA)
> mean(a)
[1] NA
由此可见,NA值
object.omit 是一个 JavaScript 库,实现从一个对象中排除某些指定属性并返回最新结果。例如:omit({a: 'a', b: 'b', c: 'c'}, 'a')
//=> { b: 'b', c: 'c' }
omit({a: 'a', b: 'b', c: 'c'}, ['a', 'c'])
//=> { b: 'b' }
var fn = function() {};
var obj = {a: 'a', b: 'b', c: fn};
var res = omit(obj, ['a'], function (val, key) {
return typeof val !== 'function';
//=> {b: 'b'}
标签:object
R语言处理缺失值
在处理数据过程中,避免不了会产生一些缺失值,如未填写数据或者编码错误等原因,用NA表示缺失值。在R语言中,is.na()函数可以判断元素是否是缺失值,从而返回逻辑值(TRUE/FALSE),所以该函数将会返回和元数据集一样大小的数据集。在判断缺失值的过程中,需要注意以下两点:
一是缺失值是不可以比较的,即不可以用缺失值去寻找缺失值,如var == NA返回的结果永远不会是true。
二是R语言中不会将正无穷和负无穷写成NA,分别用 Inf 和 –Inf 所标记。
既然缺失值可能无处不在,那么在数据分析过程中可以采取如下的方法去除缺失值:
一是很多数值函数都拥有一个 na.rm
创建一个新的普通对象并复制源对象的属性(指定属性除外)。
“收藏夹”是“收藏夹”的缩写,也是“对于所有版本”的缩写。 该软件包旨在支持所有Node.js版本和尽可能多的浏览器。 至少,此软件包支持Node.js> = v0.10和主要的Web浏览器:Chrome,Firefox,IE11,Edge,Vivaldi和Safari。
要从npm安装:
$ npm install --save @fav/prop.omit
注意: npm <2.7.0不支持作用域软件包,但是旧版本的Node.js支持它。 因此,当您使用较旧的npm时,应从下载此软件包,并将其手动移动到node_modules/@fav/prop.omit/目录中。
对于Node.js:
var omit = require ( '@fav/prop.omit' ) ;
omit ( { a : 1 , b
代码如下:
# 先写成函数的形式,方便调用
removeRowsAllNa <- function(x){x[apply(x, 1, function(y) any(!is.na(y))),]}
removeColsAllNa <- function(x){x[, apply(x, 2, function(y) any(!is.na(y)))]}
data <- removeRowsAllNa(data)
# 非函数形式则更简短,其中 x 为 Da
测试
数据如下:
Itun <- data.frame(v1 = c(1,1,2,1,2,1), v2 = c(
NA, 1, 2, 1, 2,
NA))
Itun[ , colSums(is.
na(Itun)) == 0]
output:
[1] 1 1 2 1 2 1
另一种方式:
Itun[ , apply(Itun, 2, function(x) !any(is.
na(x)))]
output:
[1] 1 1 2 1 2 1
你可以使用na.omit()函数来删除含有缺失值的数据行。这个函数会返回一个新的数据框,其中不包含缺失值的行。举个例子,假设你要对名为data的数据框进行操作,代码如下:
new_data <- na.omit(data)
这个代码会将data中所有含有缺失值的行删除,并将结果保存到new_data中。如果你想要修改原始数据框data,可以直接使用下面的代码:
data <- na.omit(data)
这个代码将会替换原始数据框data,并将删除后的结果保存到其中。
Ameliame:
R语言dataframe数据索引、访问: 使用$符号和列名称访问dataframe数据的指定列
wj_188:
R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、从雅虎金融读取著名的苹果公司的全部股票数据
demo哥:
R语言使用quantmod包的getSymbols函数从指定金融数据源获取指定时间段的股票数据、计算除权除息之后的开盘价收盘价收益率和收盘价收益率、保持不变
m0_62663824: