数据处理基础-R语言

目录

数据的标准化

字符处理函数

①计算字符数量

②提取或替换一个字符向量中的子串

③另一种方式替换字符向量中的字符

④分割字符向量

⑤连接字符串

⑥大小写变换

⑦将连续型变量转换成因子

⑧绘图函数:将连续型变量X分割为n个区间

⑨连接对象函数


z <- mean(x, trim = 0.05, na.rm=TRUE) 
则提供了截尾平均数,即丢弃了最大5%和最小5%的数据和所有缺失值后的算术平均数。

数据的标准化

默认情况下,函数scale()对矩阵或数据框的指定列进行均值为0、标准差为1的标准化:

newdata <- scale(mydata)

要对每一列进行任意均值和标准差的标准化,可以使用如下的代码:

newdata <- scale(mydata)*SD + M

其中的M是想要的均值,SD为想要的标准差。在非数值型的列上使用scale()函数将会报错。 要对指定列而不是整个矩阵或数据框进行标准化,你可以使用这样的代码:

newdata <- transform(mydata, myvar = scale(myvar)*10+50)

此句将变量myvar标准化为均值50、标准差为10的变量。

字符处理函数

字符处理函数可以从文本型数据中抽取信息。

①计算字符数量

#nchar(x) 
x <- c("ab", "cde", "fghij") 
length(x)返回值为 3 
nchar(x[3])返回值为 5

②提取或替换一个字符向量中的子串

#substr(x, start, stop) 
x <- "abcdef" 
substr(x, 2, 4)返回值为"bcd"
substr(x, 2, 4) <- "22222"(x 将变成"a222ef")

③另一种方式替换字符向量中的字符

#sub(pattern, replacement, x, ignore.case=FALSE, fixed=FALSE) 
在 x 中搜索 pattern,并以文本 replacement 将其替换。若 fixed=FALSE,则
pattern 为一个正则表达式。若 fixed=TRUE,则 pattern 为一个文本字符串。
sub("\\s",".","Hello There")返回值为 Hello.There。注意,"\s"是一个
用来查找空白的正则表达式;使用"\\s"而不用"\"的原因是,后者是 R 中的转义
字符

④分割字符向量

#strsplit(x, split, fixed=FALSE) 
在 split 处分割字符向量 x 中的元素。若 fixed=FALSE,则 pattern 为一个正
则表达式。若 fixed=TRUE,则 pattern 为一个文本字符串
y <- strsplit("abc", "")将返回一个含有 1 个成分、3 个元素的列表,包含
的内容为"a" "b" "c"

⑤连接字符串

#paste(…, sep="") 
连接字符串,分隔符为 sep
paste("x", 1:3,sep="")返回值为 c("x1", "x2", "x3")
paste("x",1:3,sep="M")返回值为 c("xM1","xM2" "xM3")
paste("Today is", date())返回值为 Today is Thu Jun 25 14:17:32 2011

⑥大小写变换

#大写变换toupper(x) 
toupper("abc")返回值为"ABC"
#小写变换tolower(x) 
tolower("ABC")返回值为"abc"

⑦将连续型变量转换成因子

#cut(x, n)
将连续型变量 x 分割为有着 n 个水平的因子
使用选项 ordered_result = TRUE 以创建一个有序型因子

⑧绘图函数:将连续型变量X分割为n个区间

#pretty(x, n) 
创建美观的分割点。通过选取 n+1 个等间距的取整值,将一个连续型变量 x分割为 n 个区间。绘图中常用

⑨连接对象函数

#cat(... , file ="myfile", append =FALSE) 连接...中的对象

\n表示新行,\t为制表符,\' 为单引号,\b为退格,等等。(键入?Quotes以了解更多。)

 请注意第二行缩进了一个空格。当cat输出连接后的对象时,它会将每一个对象都用空格分 开。这就是在句号之前使用退格转义字符(\b)的原因。不然,生成的结果将是“Hello Bob .”。

 参考资料:R语言实战(第二版)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值