在R中将列表(list)转换为向量(vector)

这篇具有很好参考价值的文章主要介绍了在R中将列表(list)转换为向量(vector)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题:将列表中的所有元素“展平”,赋值给一个向量

解决方案:使用unlist()函数;

在许多情况下需要向量,例如,baseR中的许多统计函数需要一个向量作为输入,例如,如果iq.score是一个包含数值的列表,那么我们不可以直接计算它的平均值。因为mean()函数接受一个向量作为输入,而iq.score是一个列表对象,即

> iq.scores <- list(100, 120, 103, 80, 99)
> mean(iq.scores)
[1] NA
Warning message:
In mean.default(iq.scores) : 参数不是数值也不是逻辑值:回覆NA

使用unlist()将列表对象展开成向量。

> mean(unlist(iq.scores))
[1] 100.4
> unlist(iq.scores)
[1] 100 120 103  80  99
> mean(c(100,120,103, 80,99))

 上面这个例子非常简单,因为这个列表每个元素是由一个数值构成的。

 例子2:列表的每个元素是由向量构成,即

> ex2 <- list(1:100, 101:200, 201:300, 301:400, 401:500)
> mean(unlist(ex2))
[1] 250.5
> unlist(ex2)
  [1]   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17
 [18]  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34
 [35]  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51
 [52]  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68
 [69]  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85
 [86]  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100 101 102
[103] 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
[120] 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
[137] 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153
[154] 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170
[171] 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187
[188] 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
[205] 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
[222] 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238
[239] 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255
[256] 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272
[273] 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289
[290] 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306
[307] 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323
[324] 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
[341] 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357
[358] 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374
[375] 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391
[392] 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408
[409] 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425
[426] 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442
[443] 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459
[460] 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476
[477] 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493
[494] 494 495 496 497 498 499 500

例3:

列表的每个元素是向量,并且向量的长度相等,就如例2中一样,这样可以将这个列表变成矩阵的形式。

> ex2 <- list(1:100, 101:200, 201:300, 301:400, 401:500)
> matrix(unlist(ex2), nrow=100,ncol=5, byrow=FALSE)
       [,1] [,2] [,3] [,4] [,5]
  [1,]    1  101  201  301  401
  [2,]    2  102  202  302  402
  [3,]    3  103  203  303  403
  [4,]    4  104  204  304  404
  [5,]    5  105  205  305  405
  [6,]    6  106  206  306  406
  [7,]    7  107  207  307  407
  [8,]    8  108  208  308  408
  [9,]    9  109  209  309  409
 [10,]   10  110  210  310  410
 [11,]   11  111  211  311  411
 [12,]   12  112  212  312  412
 [13,]   13  113  213  313  413
 [14,]   14  114  214  314  414
 [15,]   15  115  215  315  415
 [16,]   16  116  216  316  416
 [17,]   17  117  217  317  417
 [18,]   18  118  218  318  418
 [19,]   19  119  219  319  419
 [20,]   20  120  220  320  420
 [21,]   21  121  221  321  421
 [22,]   22  122  222  322  422
 [23,]   23  123  223  323  423
 [24,]   24  124  224  324  424
 [25,]   25  125  225  325  425
 [26,]   26  126  226  326  426
 [27,]   27  127  227  327  427
 [28,]   28  128  228  328  428
 [29,]   29  129  229  329  429
 [30,]   30  130  230  330  430
 [31,]   31  131  231  331  431
 [32,]   32  132  232  332  432
 [33,]   33  133  233  333  433
 [34,]   34  134  234  334  434
 [35,]   35  135  235  335  435
 [36,]   36  136  236  336  436
 [37,]   37  137  237  337  437
 [38,]   38  138  238  338  438
 [39,]   39  139  239  339  439
 [40,]   40  140  240  340  440
 [41,]   41  141  241  341  441
 [42,]   42  142  242  342  442
 [43,]   43  143  243  343  443
 [44,]   44  144  244  344  444
 [45,]   45  145  245  345  445
 [46,]   46  146  246  346  446
 [47,]   47  147  247  347  447
 [48,]   48  148  248  348  448
 [49,]   49  149  249  349  449
 [50,]   50  150  250  350  450
 [51,]   51  151  251  351  451
 [52,]   52  152  252  352  452
 [53,]   53  153  253  353  453
 [54,]   54  154  254  354  454
 [55,]   55  155  255  355  455
 [56,]   56  156  256  356  456
 [57,]   57  157  257  357  457
 [58,]   58  158  258  358  458
 [59,]   59  159  259  359  459
 [60,]   60  160  260  360  460
 [61,]   61  161  261  361  461
 [62,]   62  162  262  362  462
 [63,]   63  163  263  363  463
 [64,]   64  164  264  364  464
 [65,]   65  165  265  365  465
 [66,]   66  166  266  366  466
 [67,]   67  167  267  367  467
 [68,]   68  168  268  368  468
 [69,]   69  169  269  369  469
 [70,]   70  170  270  370  470
 [71,]   71  171  271  371  471
 [72,]   72  172  272  372  472
 [73,]   73  173  273  373  473
 [74,]   74  174  274  374  474
 [75,]   75  175  275  375  475
 [76,]   76  176  276  376  476
 [77,]   77  177  277  377  477
 [78,]   78  178  278  378  478
 [79,]   79  179  279  379  479
 [80,]   80  180  280  380  480
 [81,]   81  181  281  381  481
 [82,]   82  182  282  382  482
 [83,]   83  183  283  383  483
 [84,]   84  184  284  384  484
 [85,]   85  185  285  385  485
 [86,]   86  186  286  386  486
 [87,]   87  187  287  387  487
 [88,]   88  188  288  388  488
 [89,]   89  189  289  389  489
 [90,]   90  190  290  390  490
 [91,]   91  191  291  391  491
 [92,]   92  192  292  392  492
 [93,]   93  193  293  393  493
 [94,]   94  194  294  394  494
 [95,]   95  195  295  395  495
 [96,]   96  196  296  396  496
 [97,]   97  197  297  397  497
 [98,]   98  198  298  398  498
 [99,]   99  199  299  399  499
[100,]  100  200  300  400  500

参考:

《R语言经典实例(原书第2版)》(2020年5月出版, 机工社)(这本书写的很好,对于初学者很友好,推荐)文章来源地址https://www.toymoban.com/news/detail-643095.html

到了这里,关于在R中将列表(list)转换为向量(vector)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python】数据框DataFrame和列表List相互转换

    在使用一些别人封装好的库的时候,调用函数返回的结果便是DataFrame,这时如果要对内部数据做一些加工处理的话会很不方便。我们要需要将DataFrame还原成列表的形式来处理。     列表转数据框根据需要有3中转换方式 执行结果:    0 0  A 1  B 2  C 执行结果:            

    2024年02月11日
    浏览(46)
  • 将 MongoDB 的 List<Document> 转换为对象列表

    当我们使用 MongoDB 存储数据时,经常会涉及到将 MongoDB 的文档对象转换为对象列表的需求。在 Java 中,我们可以使用 MongoDB 的 Java 驱动程序和自定义类来实现这一转换过程。 本篇博客将介绍如何将 MongoDB 中的 ListDocument 转换为对象列表。以下是实现的步骤: 首先,我们需要定

    2024年02月15日
    浏览(40)
  • Java 中数组Array和列表List的转换

    主要介绍Java中Java 中数组Array和列表List的转换。 1.使用Collections.addAll()方法 使用Collections.addAll()方法,返回的List可以执行新增add方法,但该种方式只针对引用对象,不针对基本数据类型,该种方法效率较高,推荐用法。 2.使用new ArrayList()构造器方法 new ArrayList()构造器可以传入

    2024年02月10日
    浏览(42)
  • Python中列表(list)与数组(array)的相互转换方法介绍

    在Python编程中,列表(list)和数组(array)是常见的数据结构,它们在存储和处理数据时具有不同的特点和用途。有时候我们需要在列表和数组之间进行相互转换。本文将介绍如何在Python中实现列表与数组之间的相互转换,并提供相应的源代码示例。 列表(list)转换为数组

    2024年02月05日
    浏览(45)
  • MATLAB练习题:编写程序将十进制正整数转换为对应的二进制字符向量

     讲解视频:可以在bilibili搜索“MATLAB教程新手入门篇——数学建模清风主讲”。 MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili  编写程序将十进制正整数转换为对应的二进制字符向量。例如6对应的二进制字符向量为\\\'110\\\', 38对应的二进制字

    2024年02月02日
    浏览(52)
  • LVGL学习笔记 30 - List(列表)

    目录 1. 添加文本 2. 添加按钮 3. 事件 4. 修改样式 4.1 背景色 4.2 改变项的颜色 列表是一个垂直布局的矩形,可以向其中添加按钮和文本。 部件包含: LV_PART_MAIN - 主要的属性,大部分是这个部件。 LV_PART_SCROLLBAR - 滚动条的属性。 添加一行文本,当字符串长度超过显示时,会自

    2024年02月13日
    浏览(40)
  • 线性代数 --- 张成(span),基底(basis)与向量空间的维数(dimension of vector space)(个人学习笔记)

    例一:         因为,w1与w2线性无关,且二者的第三分量都是0,所以只能张成一个二维平面。又因为w1和w2都是三维向量,所以,是三维空间中的一个二维平面。w1和w3线性相关,又都只有第一个分量起作用,所以只能张成一条直线。 例二: 基底不唯一: 例一: 例10中的

    2024年02月04日
    浏览(47)
  • R语言学习笔记--列表list、数据框

    1-列表 列表 可以包含不同类型的 对象 ,也就是说,列表不是将某些具体的值组织起来,而是组织R对象。列表将数据组织在一个一维集合中。 列表非常好用,因为它可以装任何类型的对象,不要求数据之间是同质的。 创建列表 list()  以上代码,创建了一个列表,其中第一个

    2024年02月15日
    浏览(53)
  • Matlab中将行向量转为列向量的方法

    在进行一些代码编写的时候,可能需要将行向量转为列向量,那么怎么去完成这件事情呢,本篇文章给大家介绍两种简单的方法 假设有如下代码 这个代码直接给C的第三个元素赋值为1,这时候Matlab会默认其为行向量,如果我们实际需要的是列向量的话,那么可以使用下面代码

    2024年02月11日
    浏览(39)
  • python学习笔记——矩阵跟向量间的转换

    2、向量转矩阵:reshape() 可以将一维数据转为多维数据

    2024年02月16日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包