有关python中一维,二维,三维数组的理解

假设某比赛分A,B,C三个组。每组有参赛者5名,分别来自15个不同的国家。

一维数组

对于A组来说,一维数组相当于建立一个姓名列表 name =['参赛者A1','参赛者A2',....,'参赛者A5'],列表里有5个元素,代表五个参赛者。

二维数组

接着上面的,对于A组来说,二维数组相当于建立一个 姓名-国籍 数组

输出的(5, 2)表示,5行2列。意思是五个参赛者除了姓名属性外,还有国籍属性。有几个属性就有几列。相当于数据库表里的字段,有几个字段数据库表就有几列。

import numpy as np
nameCountry= np.array([['参赛者A1','国籍A1'],
                       ['参赛者A2','国籍A2'],
                       ['参赛者A3','国籍A3'],
                       ['参赛者A4','国籍A4'],
                       ['参赛者A5','国籍A5']])
print(nameCountry)
print(nameCountry.shape)

    输出为:

[['参赛者A1' '国籍A1']
 ['参赛者A2' '国籍A2']
 ['参赛者A3' '国籍A3']
 ['参赛者A4' '国籍A4']
 ['参赛者A5' '国籍A5']]
(5, 2)

三维数组

在上面两个的基础上。每组参赛者都有姓名-国籍属性,有三组,就形成了三维数组。代码如下:

import numpy as np
nameCountrys = np.array([
    [['参赛者A1','国籍A1'],['参赛者A2','国籍A2'],['参赛者A3','国籍A3'],['参赛者A4','国籍A4'],['参赛者A5','国籍A5']],
    [['参赛者B1','国籍B1'],['参赛者B2','国籍B2'],['参赛者B3','国籍B3'],['参赛者B4','国籍B4'],['参赛者B5','国籍B5']],
    [['参赛者C1','国籍C1'],['参赛者C2','国籍C2'],['参赛者C3','国籍C3'],['参赛者C4','国籍C4'],['参赛者C5','国籍C5']]
    ])
print(nameCountrys)
print(nameCountrys.shape)

    输出为:

[['参赛者A1' '国籍A1']
 ['参赛者A2' '国籍A2']
 ['参赛者A3' '国籍A3']
 ['参赛者A4' '国籍A4']
 ['参赛者A5' '国籍A5']]
(5, 2)
[[['参赛者A1' '国籍A1']
  ['参赛者A2' '国籍A2']
  ['参赛者A3' '国籍A3']
  ['参赛者A4' '国籍A4']
  ['参赛者A5' '国籍A5']]

 [['参赛者B1' '国籍B1']
  ['参赛者B2' '国籍B2']
  ['参赛者B3' '国籍B3']
  ['参赛者B4' '国籍B4']
  ['参赛者B5' '国籍B5']]

 [['参赛者C1' '国籍C1']
  ['参赛者C2' '国籍C2']
  ['参赛者C3' '国籍C3']
  ['参赛者C4' '国籍C4']
  ['参赛者C5' '国籍C5']]]
(3, 5, 2)

输出的(3,5, 2)表示,第三维的2表示每组有姓名和国籍两个属性;第二维的5表示每组有五个参赛者;最后的第一维3就代表者有3个小组。

总结

其实一维就是只有一个属性,一种特征;二维就是有多个属性,多个特征;三维即有多组,每组的属性相同。

  • 16
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值