R语言的四种数据结构---数据框

本文详细介绍了R语言中的数据框数据结构,包括创建、汇总、增删改查、排序和变形等操作。重点讨论了如何从外部读入数据框、使用str()和summary()函数进行数据概览、merge()函数进行数据合并、筛选和引用数据、排序及长宽表转换。同时,文章还提到了R中的数据透视表——ddply()函数的使用方法。
摘要由CSDN通过智能技术生成

数据框是最常见的数据结构,一般来讲,从csv或txt文件读入时就会自动存储为数据框对象。

与矩阵不同的是,矩阵只可以存储一种数据类型,而数据框可以存储多种类型,但是每一列必须为相同的数据类型

1.创建数据框

(1)从外部读入

# 读入一个txt,csv等格式数据,即自成一个数据框
movie = read.csv("电影数据.csv", fileEncoding = "UTF-8", stringsAsFactors = F)
class(movie)
##  [1] "data.frame"

(2)自己创建

# 自己创建
star1 = c("邓超", "赵丽颖", "郭富城", "周润发", "杰克布莱克", "汤唯", "白敬亭", "陈晓", "梁家辉", "姚晨", "宋茜", "黄宗泽", "黄晓明")
birthyear = c(1979, 1987, 1965, 1955, 1969, 1979, 1993, 1987, 1958, 1979, 1987, 1980, 1977)
gender = c("男", "女", "男", "男", "男", "女", "男", "男", "男", "女", "女", "男", "男")
# 使用head()函数可以提取数据的前六行
stars = data.frame(star1, birthyear, gender); head(stars)
##         star1 birthyear gender
##  1       邓超      1979     男
##  2     赵丽颖      1987     女
##  3     郭富城      1965     男
##  4     周润发      1955     男
##  5 杰克布莱克      1969     男
##  6       汤唯      1979     女

2.汇总

str()函数用来展示每列的数据类型,可以确定是连续的数值好事离散的因子

summary()函数是清洗数据的必备之选,可自动根据数据类型调整输出结果。具体来说,对于连续数据,它能给出输出数据的分位数值,对于类别数据(以factor存储形式),它能给出输出每个类别的数目统计,这样,各类数据样本是否平衡就一目了然。

str(movie)
##  'data.frame':   19 obs. of  11 variables:
##   $ name       : chr  "叶问3" "美人鱼" "女汉子真爱公式" "西游记之孙悟空三打白骨精" ...
##   $ boxoffice  : num  77060 338583 6184 119957 111694 ...
##   $ doubanscore: num  6.4 6.9 4.5 5.7 4 7.7 6.5 6.4 5 5.6 ...
##   $ type       : chr  "动作" "喜剧" "喜剧" "喜剧" ...
##   $ duration   : int  105 93 93 120 112 95 131 108 95 102 ...
##   $ showtime   : chr  "2016/3/4" "2016/2/8" "2016/3/18" "2016/2/8" ...
##   $ director   : chr  "叶伟信" "周星驰" "郭大雷" "郑保瑞" ...
##   $ star1      : chr  "甄子丹" "邓超" "赵丽颖" "郭富城" ...
##   $ index1     : int  11385 41310 181979 12227 16731 178 13499 14759 13251 6911 ...
##   $ star2      : chr  "张晋" "林允" "张翰" "巩俐" ...
##   $ index2     : int  4105 9292 44277 8546 30277 1540 77260 755 9549 5614 ...
summary(movie)
##       name             boxoffice         doubanscore        type          
##   Length:19          Min.   :   924.9   Min.   :3.400   Length:19         
##   Class :cha
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值