zoukankan      html  css  js  c++  java
  • R读取文件内容到Frame

    先把工作目录改为文件所在目录

    > d=read.csv("singers.csv")
    > attributes(d)
    $names
    [1] "Soprano" "Alto"    "Tenor"   "Bass"  

    $class
    [1] "data.frame"

    $row.names
     [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
    [25] 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
    R虽已读取了所有数据,但这些数据包括NA,排列方式并不适用于分析。将d转成矩阵,再转成向量。

    > part=names(d)

    > part=rep(part,each=39)
    > part
      [1] "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano"
      [8] "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano"
     [15] "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano"
     [22] "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano"
     [29] "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano" "Soprano"
     [36] "Soprano" "Soprano" "Soprano" "Soprano" "Alto"    "Alto"    "Alto"  
     [43] "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"  
     [50] "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"  
     [57] "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"  
     [64] "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"  
     [71] "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"    "Alto"  
     [78] "Alto"    "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor" 
     [85] "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor" 
     [92] "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor" 
     [99] "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor" 
    [106] "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor" 
    [113] "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Tenor"   "Bass"    "Bass"  
    [120] "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"  
    [127] "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"  
    [134] "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"  
    [141] "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"  
    [148] "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"    "Bass"

    > temp=matrix(c(d,part),nc=2)
    > temp
           [,1] [,2]    
      [1,] "64" "Soprano"
      [2,] "62" "Soprano"
      [3,] "66" "Soprano"
      [4,] "65" "Soprano"
      [5,] "60" "Soprano"
      [6,] "61" "Soprano"
      [7,] "65" "Soprano"
      [8,] "66" "Soprano"
      [9,] "65" "Soprano"
     [10,] "63" "Soprano"
     [11,] "67" "Soprano"
     [12,] "65" "Soprano"
     [13,] "62" "Soprano"
     [14,] "65" "Soprano"
     [15,] "68" "Soprano"
     [16,] "65" "Soprano"
     [17,] "63" "Soprano"
     [18,] "65" "Soprano"
     [19,] "62" "Soprano"
     [20,] "65" "Soprano"
     [21,] "66" "Soprano"
     [22,] "62" "Soprano"
     [23,] "65" "Soprano"
     [24,] "63" "Soprano"
     [25,] "65" "Soprano"
     [26,] "66" "Soprano"
     [27,] "65" "Soprano"
     [28,] "62" "Soprano"
     [29,] "65" "Soprano"
     [30,] "66" "Soprano"
     [31,] "65" "Soprano"
     [32,] "61" "Soprano"
     [33,] "65" "Soprano"
     [34,] "66" "Soprano"
     [35,] "65" "Soprano"
     [36,] "62" "Soprano"
     [37,] NA   "Soprano"
     [38,] NA   "Soprano"
     [39,] NA   "Soprano"
     [40,] "65" "Alto"  
     [41,] "62" "Alto"  
     [42,] "68" "Alto"  
     [43,] "67" "Alto"  
     [44,] "67" "Alto"  
     [45,] "63" "Alto"  
     [46,] "67" "Alto"  
     [47,] "66" "Alto"  
     [48,] "63" "Alto"  
     [49,] "72" "Alto"  
     [50,] "62" "Alto"  
     [51,] "61" "Alto"  
     [52,] "66" "Alto"  
     [53,] "64" "Alto"  
     [54,] "60" "Alto"  
     [55,] "61" "Alto"  
     [56,] "66" "Alto"  
     [57,] "66" "Alto"  
     [58,] "66" "Alto"  
     [59,] "62" "Alto"  
     [60,] "70" "Alto"  
     [61,] "65" "Alto"  
     [62,] "64" "Alto"  
     [63,] "63" "Alto"  
     [64,] "65" "Alto"  
     [65,] "69" "Alto"  
     [66,] "61" "Alto"  
     [67,] "66" "Alto"  
     [68,] "65" "Alto"  
     [69,] "61" "Alto"  
     [70,] "63" "Alto"  
     [71,] "64" "Alto"  
     [72,] "67" "Alto"  
     [73,] "66" "Alto"  
     [74,] "68" "Alto"  
     [75,] NA   "Alto"  
     [76,] NA   "Alto"  
     [77,] NA   "Alto"  
     [78,] NA   "Alto"  
     [79,] "69" "Tenor" 
     [80,] "72" "Tenor" 
     [81,] "71" "Tenor" 
     [82,] "66" "Tenor" 
     [83,] "76" "Tenor" 
     [84,] "74" "Tenor" 
     [85,] "71" "Tenor" 
     [86,] "66" "Tenor" 
     [87,] "68" "Tenor" 
     [88,] "67" "Tenor" 
     [89,] "70" "Tenor" 
     [90,] "65" "Tenor" 
     [91,] "72" "Tenor" 
     [92,] "70" "Tenor" 
     [93,] "68" "Tenor" 
     [94,] "73" "Tenor" 
     [95,] "66" "Tenor" 
     [96,] "68" "Tenor" 
     [97,] "67" "Tenor" 
     [98,] "64" "Tenor" 
     [99,] NA   "Tenor" 
    [100,] NA   "Tenor" 
    [101,] NA   "Tenor" 
    [102,] NA   "Tenor" 
    [103,] NA   "Tenor" 
    [104,] NA   "Tenor" 
    [105,] NA   "Tenor" 
    [106,] NA   "Tenor" 
    [107,] NA   "Tenor" 
    [108,] NA   "Tenor" 
    [109,] NA   "Tenor" 
    [110,] NA   "Tenor" 
    [111,] NA   "Tenor" 
    [112,] NA   "Tenor" 
    [113,] NA   "Tenor" 
    [114,] NA   "Tenor" 
    [115,] NA   "Tenor" 
    [116,] NA   "Tenor" 
    [117,] NA   "Tenor" 
    [118,] "72" "Bass"  
    [119,] "70" "Bass"  
    [120,] "72" "Bass"  
    [121,] "69" "Bass"  
    [122,] "73" "Bass"  
    [123,] "71" "Bass"  
    [124,] "72" "Bass"  
    [125,] "68" "Bass"  
    [126,] "68" "Bass"  
    [127,] "71" "Bass"  
    [128,] "66" "Bass"  
    [129,] "68" "Bass"  
    [130,] "71" "Bass"  
    [131,] "73" "Bass"  
    [132,] "73" "Bass"  
    [133,] "70" "Bass"  
    [134,] "68" "Bass"  
    [135,] "70" "Bass"  
    [136,] "75" "Bass"  
    [137,] "68" "Bass"  
    [138,] "71" "Bass"  
    [139,] "70" "Bass"  
    [140,] "74" "Bass"  
    [141,] "70" "Bass"  
    [142,] "75" "Bass"  
    [143,] "75" "Bass"  
    [144,] "69" "Bass"  
    [145,] "72" "Bass"  
    [146,] "71" "Bass"  
    [147,] "70" "Bass"  
    [148,] "71" "Bass"  
    [149,] "68" "Bass"  
    [150,] "70" "Bass"  
    [151,] "75" "Bass"  
    [152,] "72" "Bass"  
    [153,] "66" "Bass"  
    [154,] "72" "Bass"  
    [155,] "70" "Bass"  
    [156,] "69" "Bass"

    选取在temp中不是NA的行,然后把它转化为数据框Frame

    > temp=temp[!is.na(temp[,1]),]
    > temp
           [,1] [,2]    
      [1,] "64" "Soprano"
      [2,] "62" "Soprano"
      [3,] "66" "Soprano"
      [4,] "65" "Soprano"
      [5,] "60" "Soprano"
      [6,] "61" "Soprano"
      [7,] "65" "Soprano"
      [8,] "66" "Soprano"
      [9,] "65" "Soprano"
     [10,] "63" "Soprano"
     [11,] "67" "Soprano"
     [12,] "65" "Soprano"
     [13,] "62" "Soprano"
     [14,] "65" "Soprano"
     [15,] "68" "Soprano"
     [16,] "65" "Soprano"
     [17,] "63" "Soprano"
     [18,] "65" "Soprano"
     [19,] "62" "Soprano"
     [20,] "65" "Soprano"
     [21,] "66" "Soprano"
     [22,] "62" "Soprano"
     [23,] "65" "Soprano"
     [24,] "63" "Soprano"
     [25,] "65" "Soprano"
     [26,] "66" "Soprano"
     [27,] "65" "Soprano"
     [28,] "62" "Soprano"
     [29,] "65" "Soprano"
     [30,] "66" "Soprano"
     [31,] "65" "Soprano"
     [32,] "61" "Soprano"
     [33,] "65" "Soprano"
     [34,] "66" "Soprano"
     [35,] "65" "Soprano"
     [36,] "62" "Soprano"
     [37,] "65" "Alto"  
     [38,] "62" "Alto"  
     [39,] "68" "Alto"  
     [40,] "67" "Alto"  
     [41,] "67" "Alto"  
     [42,] "63" "Alto"  
     [43,] "67" "Alto"  
     [44,] "66" "Alto"  
     [45,] "63" "Alto"  
     [46,] "72" "Alto"  
     [47,] "62" "Alto"  
     [48,] "61" "Alto"  
     [49,] "66" "Alto"  
     [50,] "64" "Alto"  
     [51,] "60" "Alto"  
     [52,] "61" "Alto"  
     [53,] "66" "Alto"  
     [54,] "66" "Alto"  
     [55,] "66" "Alto"  
     [56,] "62" "Alto"  
     [57,] "70" "Alto"  
     [58,] "65" "Alto"  
     [59,] "64" "Alto"  
     [60,] "63" "Alto"  
     [61,] "65" "Alto"  
     [62,] "69" "Alto"  
     [63,] "61" "Alto"  
     [64,] "66" "Alto"  
     [65,] "65" "Alto"  
     [66,] "61" "Alto"  
     [67,] "63" "Alto"  
     [68,] "64" "Alto"  
     [69,] "67" "Alto"  
     [70,] "66" "Alto"  
     [71,] "68" "Alto"  
     [72,] "69" "Tenor" 
     [73,] "72" "Tenor" 
     [74,] "71" "Tenor" 
     [75,] "66" "Tenor" 
     [76,] "76" "Tenor" 
     [77,] "74" "Tenor" 
     [78,] "71" "Tenor" 
     [79,] "66" "Tenor" 
     [80,] "68" "Tenor" 
     [81,] "67" "Tenor" 
     [82,] "70" "Tenor" 
     [83,] "65" "Tenor" 
     [84,] "72" "Tenor" 
     [85,] "70" "Tenor" 
     [86,] "68" "Tenor" 
     [87,] "73" "Tenor" 
     [88,] "66" "Tenor" 
     [89,] "68" "Tenor" 
     [90,] "67" "Tenor" 
     [91,] "64" "Tenor" 
     [92,] "72" "Bass"  
     [93,] "70" "Bass"  
     [94,] "72" "Bass"  
     [95,] "69" "Bass"  
     [96,] "73" "Bass"  
     [97,] "71" "Bass"  
     [98,] "72" "Bass"  
     [99,] "68" "Bass"  
    [100,] "68" "Bass"  
    [101,] "71" "Bass"  
    [102,] "66" "Bass"  
    [103,] "68" "Bass"  
    [104,] "71" "Bass"  
    [105,] "73" "Bass"  
    [106,] "73" "Bass"  
    [107,] "70" "Bass"  
    [108,] "68" "Bass"  
    [109,] "70" "Bass"  
    [110,] "75" "Bass"  
    [111,] "68" "Bass"  
    [112,] "71" "Bass"  
    [113,] "70" "Bass"  
    [114,] "74" "Bass"  
    [115,] "70" "Bass"  
    [116,] "75" "Bass"  
    [117,] "75" "Bass"  
    [118,] "69" "Bass"  
    [119,] "72" "Bass"  
    [120,] "71" "Bass"  
    [121,] "70" "Bass"  
    [122,] "71" "Bass"  
    [123,] "68" "Bass"  
    [124,] "70" "Bass"  
    [125,] "75" "Bass"  
    [126,] "72" "Bass"  
    [127,] "66" "Bass"  
    [128,] "72" "Bass"  
    [129,] "70" "Bass"  
    [130,] "69" "Bass"  
    > singers=data.frame(temp)
    > singers
        X1      X2
    1   64 Soprano
    2   62 Soprano
    3   66 Soprano
    4   65 Soprano
    5   60 Soprano
    6   61 Soprano
    7   65 Soprano
    8   66 Soprano
    9   65 Soprano
    10  63 Soprano
    11  67 Soprano
    12  65 Soprano
    13  62 Soprano
    14  65 Soprano
    15  68 Soprano
    16  65 Soprano
    17  63 Soprano
    18  65 Soprano
    19  62 Soprano
    20  65 Soprano
    21  66 Soprano
    22  62 Soprano
    23  65 Soprano
    24  63 Soprano
    25  65 Soprano
    26  66 Soprano
    27  65 Soprano
    28  62 Soprano
    29  65 Soprano
    30  66 Soprano
    31  65 Soprano
    32  61 Soprano
    33  65 Soprano
    34  66 Soprano
    35  65 Soprano
    36  62 Soprano
    37  65    Alto
    38  62    Alto
    39  68    Alto
    40  67    Alto
    41  67    Alto
    42  63    Alto
    43  67    Alto
    44  66    Alto
    45  63    Alto
    46  72    Alto
    47  62    Alto
    48  61    Alto
    49  66    Alto
    50  64    Alto
    51  60    Alto
    52  61    Alto
    53  66    Alto
    54  66    Alto
    55  66    Alto
    56  62    Alto
    57  70    Alto
    58  65    Alto
    59  64    Alto
    60  63    Alto
    61  65    Alto
    62  69    Alto
    63  61    Alto
    64  66    Alto
    65  65    Alto
    66  61    Alto
    67  63    Alto
    68  64    Alto
    69  67    Alto
    70  66    Alto
    71  68    Alto
    72  69   Tenor
    73  72   Tenor
    74  71   Tenor
    75  66   Tenor
    76  76   Tenor
    77  74   Tenor
    78  71   Tenor
    79  66   Tenor
    80  68   Tenor
    81  67   Tenor
    82  70   Tenor
    83  65   Tenor
    84  72   Tenor
    85  70   Tenor
    86  68   Tenor
    87  73   Tenor
    88  66   Tenor
    89  68   Tenor
    90  67   Tenor
    91  64   Tenor
    92  72    Bass
    93  70    Bass
    94  72    Bass
    95  69    Bass
    96  73    Bass
    97  71    Bass
    98  72    Bass
    99  68    Bass
    100 68    Bass
    101 71    Bass
    102 66    Bass
    103 68    Bass
    104 71    Bass
    105 73    Bass
    106 73    Bass
    107 70    Bass
    108 68    Bass
    109 70    Bass
    110 75    Bass
    111 68    Bass
    112 71    Bass
    113 70    Bass
    114 74    Bass
    115 70    Bass
    116 75    Bass
    117 75    Bass
    118 69    Bass
    119 72    Bass
    120 71    Bass
    121 70    Bass
    122 71    Bass
    123 68    Bass
    124 70    Bass
    125 75    Bass
    126 72    Bass
    127 66    Bass
    128 72    Bass
    129 70    Bass
    130 69    Bass
    > names(singers)=c("Height","Part")

    > singers $ Height=as.numeric(singers $ Height)
    > singers $ Part=ordered(as.factor(singers $ Part),levels=c("Bass","Tenor","Alto","Soprano"))
    > singers
        Height    Part
    1        5 Soprano
    2        3 Soprano
    3        7 Soprano
    4        6 Soprano
    5        1 Soprano
    6        2 Soprano
    7        6 Soprano
    8        7 Soprano
    9        6 Soprano
    10       4 Soprano
    11       8 Soprano
    12       6 Soprano
    13       3 Soprano
    14       6 Soprano
    15       9 Soprano
    16       6 Soprano
    17       4 Soprano
    18       6 Soprano
    19       3 Soprano
    20       6 Soprano
    21       7 Soprano
    22       3 Soprano
    23       6 Soprano
    24       4 Soprano
    25       6 Soprano
    26       7 Soprano
    27       6 Soprano
    28       3 Soprano
    29       6 Soprano
    30       7 Soprano
    31       6 Soprano
    32       2 Soprano
    33       6 Soprano
    34       7 Soprano
    35       6 Soprano
    36       3 Soprano
    37       6    Alto
    38       3    Alto
    39       9    Alto
    40       8    Alto
    41       8    Alto
    42       4    Alto
    43       8    Alto
    44       7    Alto
    45       4    Alto
    46      13    Alto
    47       3    Alto
    48       2    Alto
    49       7    Alto
    50       5    Alto
    51       1    Alto
    52       2    Alto
    53       7    Alto
    54       7    Alto
    55       7    Alto
    56       3    Alto
    57      11    Alto
    58       6    Alto
    59       5    Alto
    60       4    Alto
    61       6    Alto
    62      10    Alto
    63       2    Alto
    64       7    Alto
    65       6    Alto
    66       2    Alto
    67       4    Alto
    68       5    Alto
    69       8    Alto
    70       7    Alto
    71       9    Alto
    72      10   Tenor
    73      13   Tenor
    74      12   Tenor
    75       7   Tenor
    76      17   Tenor
    77      15   Tenor
    78      12   Tenor
    79       7   Tenor
    80       9   Tenor
    81       8   Tenor
    82      11   Tenor
    83       6   Tenor
    84      13   Tenor
    85      11   Tenor
    86       9   Tenor
    87      14   Tenor
    88       7   Tenor
    89       9   Tenor
    90       8   Tenor
    91       5   Tenor
    92      13    Bass
    93      11    Bass
    94      13    Bass
    95      10    Bass
    96      14    Bass
    97      12    Bass
    98      13    Bass
    99       9    Bass
    100      9    Bass
    101     12    Bass
    102      7    Bass
    103      9    Bass
    104     12    Bass
    105     14    Bass
    106     14    Bass
    107     11    Bass
    108      9    Bass
    109     11    Bass
    110     16    Bass
    111      9    Bass
    112     12    Bass
    113     11    Bass
    114     15    Bass
    115     11    Bass
    116     16    Bass
    117     16    Bass
    118     10    Bass
    119     13    Bass
    120     12    Bass
    121     11    Bass
    122     12    Bass
    123      9    Bass
    124     11    Bass
    125     16    Bass
    126     13    Bass
    127      7    Bass
    128     13    Bass
    129     11    Bass
    130     10    Bass
    singers就转成了我们想要的Frame

    但,singers $ Height=as.numeric(singers $ Height),像是把原来的数当成了ASC码,转成numeric时数据的值发生了变化,这可能对统计结果不产生影响,可似乎还是不大正确。

  • 相关阅读:
    DIV 设置垂直居中
    JavaScript--什么是函数
    JavaScript--引用JS外部文件
    JavaScript--如何插入JS
    CSS-类和ID选择器的区别
    CSS-ID选择器
    CSS类选择器
    CSS样式介绍
    HTML--使用mailto在网页中链接Email地址
    HTML--form表单中的label标签
  • 原文地址:https://www.cnblogs.com/frostbelt/p/1831491.html
Copyright © 2011-2022 走看看