R语言入门 Chapter04 | 数据框

2020-10-28 14:47:41 浏览数 (1)

不登高山,不知天之高也;不临深溪,不知地之厚也。 ——荀子

这篇文章讲述的是R语言中关于数据框的相关知识。希望这篇R语言文章对您有所帮助!如果您有想学习的知识或建议,可以给作者留言~

Chapter04 | 数据框

数据框的特点: 1、数据框是一种表格式的数据结构。数据框旨在模拟数据集,与其他统计软件例如SAS或SPASS中的数据集的概念一致。 2、数据集通常是由数据构成的一个矩阵数组,行表示观测,列表示变量。不同的行业对于数据集的行和列叫法不同。 3、数据框实际上是一个列表。列表中的元素是向量,这些向量构成数据框的列,每一列必须具有相同的长度,所以数据框是矩形结构,而且数剧框的列必须命名。

  • 常见数据框:
  • 1、iris
  • 2、mtcars
  • 3、rock

矩阵与数据框: 1、数据框形状上很像矩阵 2、数据框是比较规则的列表 3、矩阵必须为同一数据类型 4、数据框每一列必须同一类型,每一行可以不同

  • 1、数据框的访问
代码语言:javascript复制
> state <- data.frame(state.name,state.abb,state.region,state.x77)

#  数据框的访问 通过索引进行访问
> state[1]
                   state.name
Alabama               Alabama
Alaska                 Alaska
Arizona               Arizona
Arkansas             Arkansas
California         California
Colorado             Colorado
Connecticut       Connecticut
Delaware             Delaware
Florida               Florida
Georgia               Georgia
Hawaii                 Hawaii
Idaho                   Idaho
Illinois             Illinois
Indiana               Indiana
Iowa                     Iowa
Kansas                 Kansas
Kentucky             Kentucky
Louisiana           Louisiana
Maine                   Maine
Maryland             Maryland
Massachusetts   Massachusetts
Michigan             Michigan
Minnesota           Minnesota
Mississippi       Mississippi
Missouri             Missouri
Montana               Montana
Nebraska             Nebraska
Nevada                 Nevada
New Hampshire   New Hampshire
New Jersey         New Jersey
New Mexico         New Mexico
New York             New York
North Carolina North Carolina
North Dakota     North Dakota
Ohio                     Ohio
Oklahoma             Oklahoma
Oregon                 Oregon
Pennsylvania     Pennsylvania
Rhode Island     Rhode Island
South Carolina South Carolina
South Dakota     South Dakota
Tennessee           Tennessee
Texas                   Texas
Utah                     Utah
Vermont               Vermont
Virginia             Virginia
Washington         Washington
West Virginia   West Virginia
Wisconsin           Wisconsin
Wyoming               Wyoming


# 也可以通过数组进行访问,添加负索引表示除此之外
> state[c(2,4)] 
               state.abb Population
Alabama               AL       3615
Alaska                AK        365
Arizona               AZ       2212
Arkansas              AR       2110
California            CA      21198
Colorado              CO       2541
Connecticut           CT       3100
Delaware              DE        579
Florida               FL       8277
Georgia               GA       4931
Hawaii                HI        868
Idaho                 ID        813
Illinois              IL      11197
Indiana               IN       5313
Iowa                  IA       2861
Kansas                KS       2280
Kentucky              KY       3387
Louisiana             LA       3806
Maine                 ME       1058
Maryland              MD       4122
Massachusetts         MA       5814
Michigan              MI       9111
Minnesota             MN       3921
Mississippi           MS       2341
Missouri              MO       4767
Montana               MT        746
Nebraska              NE       1544
Nevada                NV        590
New Hampshire         NH        812
New Jersey            NJ       7333
New Mexico            NM       1144
New York              NY      18076
North Carolina        NC       5441
North Dakota          ND        637
Ohio                  OH      10735
Oklahoma              OK       2715
Oregon                OR       2284
Pennsylvania          PA      11860
Rhode Island          RI        931
South Carolina        SC       2816
South Dakota          SD        681
Tennessee             TN       4173
Texas                 TX      12237
Utah                  UT       1203
Vermont               VT        472
Virginia              VA       4981
Washington            WA       3559
West Virginia         WV       1799
Wisconsin             WI       4589
Wyoming               WY        376

# 利用行和列的名字可以直接搜索想要内容
> state[,"state.abb"]
 [1] AL AK AZ AR CA CO CT DE FL GA HI ID IL IN IA KS KY LA ME MD MA MI MN MS MO MT NE NV NH NJ
[31] NM NY NC ND OH OK OR PA RI SC SD TN TX UT VT VA WA WV WI WY
50 Levels: AK AL AR AZ CA CO CT DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS ... WY


> state["Alabama",]
        state.name state.abb state.region Population Income Illiteracy Life.Exp Murder
Alabama    Alabama        AL        South       3615   3624        2.1    69.05   15.1
        HS.Grad Frost  Area
Alabama    41.3    20 50708
  • 2、可绘制散点图
代码语言:javascript复制
# 使用$的访问方式,最常用的方式,可以快速取出任意的一列,再后面的分析和画图中很重要
women$height 
 [1] 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72

# 可以快速绘制散点图
plot(women$height,women$weight)
  • 3、lm函数进行线性回归
代码语言:javascript复制
> lm (weight~height,data = women)

Call:
lm(formula = weight ~ height, data = women)

Coefficients:
(Intercept)       height  
     -87.52         3.45  
  • 4
代码语言:javascript复制
# 如果没回都使用$可能会不方便,这是可以通过attach函数进行加载
> attach(mtcars)

# 加载完以后直接搜索即可
> mpg 
 [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 17.8 16.4 17.3 15.2 10.4 10.4 14.7 32.4
[19] 30.4 33.9 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7 15.0 21.4
> hp
 [1] 110 110  93 110 175 105 245  62  95 123 123 180 180 180 205 215 230  66  52  65  97 150
[23] 150 245 175  66  91 113 264 175 335 109

# detach函数取消加载
> detach(mtcars) 

# with函数与attach类似
> with(mtcars,{mpg}) 
 [1] 21.0 21.0 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 17.8 16.4 17.3 15.2 10.4 10.4 14.7 32.4
[19] 30.4 33.9 21.5 15.5 15.2 13.3 19.2 27.3 26.0 30.4 15.8 19.7 15.0 21.4

0 人点赞