NumPy数值计算基础实训

简介: NumPy数值计算基础实训

实训目的

1.熟练掌握NumPy多维数组;

2.熟练掌握NumPy索引和切片;

3.熟练掌握NumPy数组读写及数据统计分析


实训要求

读取iris数据集中鸢尾花的萼片、花瓣长度数据(已保存为CSV格式),并对其进行排序、去重,并求出和、累积和、均值、标准差、方差、最小值、最大值


1:导入模块

import numpy as np
import csv


2:获取数据

实验数据

import numpy as np
import csv
iris_data = []
with open("iris.csv") as csvfile:
    csv_reader = csv.reader(csvfile)
    birth_header = next(csv_reader)
    for row in csv_reader:
        iris_data.append(row)   


输出数据获取的数据看一下是否正确,为了方便查看每两组数据为一行

i = 0
for x in iris_data:
    i+=1
    print(x, end='')
    if i % 2 == 0:
        print()


['1', '5.1', '3.5', '1.4', '0.2', 'setosa']['2', '4.9', '3', '1.4', '0.2', 'setosa']
['3', '4.7', '3.2', '1.3', '0.2', 'setosa']['4', '4.6', '3.1', '1.5', '0.2', 'setosa']
['5', '5', '3.6', '1.4', '0.2', 'setosa']['6', '5.4', '3.9', '1.7', '0.4', 'setosa']
['7', '4.6', '3.4', '1.4', '0.3', 'setosa']['8', '5', '3.4', '1.5', '0.2', 'setosa']
['9', '4.4', '2.9', '1.4', '0.2', 'setosa']['10', '4.9', '3.1', '1.5', '0.1', 'setosa']
['11', '5.4', '3.7', '1.5', '0.2', 'setosa']['12', '4.8', '3.4', '1.6', '0.2', 'setosa']
['13', '4.8', '3', '1.4', '0.1', 'setosa']['14', '4.3', '3', '1.1', '0.1', 'setosa']
['15', '5.8', '4', '1.2', '0.2', 'setosa']['16', '5.7', '4.4', '1.5', '0.4', 'setosa']
['17', '5.4', '3.9', '1.3', '0.4', 'setosa']['18', '5.1', '3.5', '1.4', '0.3', 'setosa']
['19', '5.7', '3.8', '1.7', '0.3', 'setosa']['20', '5.1', '3.8', '1.5', '0.3', 'setosa']
['21', '5.4', '3.4', '1.7', '0.2', 'setosa']['22', '5.1', '3.7', '1.5', '0.4', 'setosa']
['23', '4.6', '3.6', '1', '0.2', 'setosa']['24', '5.1', '3.3', '1.7', '0.5', 'setosa']
['25', '4.8', '3.4', '1.9', '0.2', 'setosa']['26', '5', '3', '1.6', '0.2', 'setosa']
['27', '5', '3.4', '1.6', '0.4', 'setosa']['28', '5.2', '3.5', '1.5', '0.2', 'setosa']
['29', '5.2', '3.4', '1.4', '0.2', 'setosa']['30', '4.7', '3.2', '1.6', '0.2', 'setosa']
['31', '4.8', '3.1', '1.6', '0.2', 'setosa']['32', '5.4', '3.4', '1.5', '0.4', 'setosa']
['33', '5.2', '4.1', '1.5', '0.1', 'setosa']['34', '5.5', '4.2', '1.4', '0.2', 'setosa']
['35', '4.9', '3.1', '1.5', '0.2', 'setosa']['36', '5', '3.2', '1.2', '0.2', 'setosa']
['37', '5.5', '3.5', '1.3', '0.2', 'setosa']['38', '4.9', '3.6', '1.4', '0.1', 'setosa']
['39', '4.4', '3', '1.3', '0.2', 'setosa']['40', '5.1', '3.4', '1.5', '0.2', 'setosa']
['41', '5', '3.5', '1.3', '0.3', 'setosa']['42', '4.5', '2.3', '1.3', '0.3', 'setosa']
['43', '4.4', '3.2', '1.3', '0.2', 'setosa']['44', '5', '3.5', '1.6', '0.6', 'setosa']
['45', '5.1', '3.8', '1.9', '0.4', 'setosa']['46', '4.8', '3', '1.4', '0.3', 'setosa']
['47', '5.1', '3.8', '1.6', '0.2', 'setosa']['48', '4.6', '3.2', '1.4', '0.2', 'setosa']
['49', '5.3', '3.7', '1.5', '0.2', 'setosa']['50', '5', '3.3', '1.4', '0.2', 'setosa']
['51', '7', '3.2', '4.7', '1.4', 'versicolor']['52', '6.4', '3.2', '4.5', '1.5', 'versicolor']
['53', '6.9', '3.1', '4.9', '1.5', 'versicolor']['54', '5.5', '2.3', '4', '1.3', 'versicolor']
['55', '6.5', '2.8', '4.6', '1.5', 'versicolor']['56', '5.7', '2.8', '4.5', '1.3', 'versicolor']
['57', '6.3', '3.3', '4.7', '1.6', 'versicolor']['58', '4.9', '2.4', '3.3', '1', 'versicolor']
['59', '6.6', '2.9', '4.6', '1.3', 'versicolor']['60', '5.2', '2.7', '3.9', '1.4', 'versicolor']
['61', '5', '2', '3.5', '1', 'versicolor']['62', '5.9', '3', '4.2', '1.5', 'versicolor']
['63', '6', '2.2', '4', '1', 'versicolor']['64', '6.1', '2.9', '4.7', '1.4', 'versicolor']
['65', '5.6', '2.9', '3.6', '1.3', 'versicolor']['66', '6.7', '3.1', '4.4', '1.4', 'versicolor']
['67', '5.6', '3', '4.5', '1.5', 'versicolor']['68', '5.8', '2.7', '4.1', '1', 'versicolor']
['69', '6.2', '2.2', '4.5', '1.5', 'versicolor']['70', '5.6', '2.5', '3.9', '1.1', 'versicolor']
['71', '5.9', '3.2', '4.8', '1.8', 'versicolor']['72', '6.1', '2.8', '4', '1.3', 'versicolor']
['73', '6.3', '2.5', '4.9', '1.5', 'versicolor']['74', '6.1', '2.8', '4.7', '1.2', 'versicolor']
['75', '6.4', '2.9', '4.3', '1.3', 'versicolor']['76', '6.6', '3', '4.4', '1.4', 'versicolor']
['77', '6.8', '2.8', '4.8', '1.4', 'versicolor']['78', '6.7', '3', '5', '1.7', 'versicolor']
['79', '6', '2.9', '4.5', '1.5', 'versicolor']['80', '5.7', '2.6', '3.5', '1', 'versicolor']
['81', '5.5', '2.4', '3.8', '1.1', 'versicolor']['82', '5.5', '2.4', '3.7', '1', 'versicolor']
['83', '5.8', '2.7', '3.9', '1.2', 'versicolor']['84', '6', '2.7', '5.1', '1.6', 'versicolor']
['85', '5.4', '3', '4.5', '1.5', 'versicolor']['86', '6', '3.4', '4.5', '1.6', 'versicolor']
['87', '6.7', '3.1', '4.7', '1.5', 'versicolor']['88', '6.3', '2.3', '4.4', '1.3', 'versicolor']
['89', '5.6', '3', '4.1', '1.3', 'versicolor']['90', '5.5', '2.5', '4', '1.3', 'versicolor']
['91', '5.5', '2.6', '4.4', '1.2', 'versicolor']['92', '6.1', '3', '4.6', '1.4', 'versicolor']
['93', '5.8', '2.6', '4', '1.2', 'versicolor']['94', '5', '2.3', '3.3', '1', 'versicolor']
['95', '5.6', '2.7', '4.2', '1.3', 'versicolor']['96', '5.7', '3', '4.2', '1.2', 'versicolor']
['97', '5.7', '2.9', '4.2', '1.3', 'versicolor']['98', '6.2', '2.9', '4.3', '1.3', 'versicolor']
['99', '5.1', '2.5', '3', '1.1', 'versicolor']['100', '5.7', '2.8', '4.1', '1.3', 'versicolor']
['101', '6.3', '3.3', '6', '2.5', 'virginica']['102', '5.8', '2.7', '5.1', '1.9', 'virginica']
['103', '7.1', '3', '5.9', '2.1', 'virginica']['104', '6.3', '2.9', '5.6', '1.8', 'virginica']
['105', '6.5', '3', '5.8', '2.2', 'virginica']['106', '7.6', '3', '6.6', '2.1', 'virginica']
['107', '4.9', '2.5', '4.5', '1.7', 'virginica']['108', '7.3', '2.9', '6.3', '1.8', 'virginica']
['109', '6.7', '2.5', '5.8', '1.8', 'virginica']['110', '7.2', '3.6', '6.1', '2.5', 'virginica']
['111', '6.5', '3.2', '5.1', '2', 'virginica']['112', '6.4', '2.7', '5.3', '1.9', 'virginica']
['113', '6.8', '3', '5.5', '2.1', 'virginica']['114', '5.7', '2.5', '5', '2', 'virginica']
['115', '5.8', '2.8', '5.1', '2.4', 'virginica']['116', '6.4', '3.2', '5.3', '2.3', 'virginica']
['117', '6.5', '3', '5.5', '1.8', 'virginica']['118', '7.7', '3.8', '6.7', '2.2', 'virginica']
['119', '7.7', '2.6', '6.9', '2.3', 'virginica']['120', '6', '2.2', '5', '1.5', 'virginica']
['121', '6.9', '3.2', '5.7', '2.3', 'virginica']['122', '5.6', '2.8', '4.9', '2', 'virginica']
['123', '7.7', '2.8', '6.7', '2', 'virginica']['124', '6.3', '2.7', '4.9', '1.8', 'virginica']
['125', '6.7', '3.3', '5.7', '2.1', 'virginica']['126', '7.2', '3.2', '6', '1.8', 'virginica']
['127', '6.2', '2.8', '4.8', '1.8', 'virginica']['128', '6.1', '3', '4.9', '1.8', 'virginica']
['129', '6.4', '2.8', '5.6', '2.1', 'virginica']['130', '7.2', '3', '5.8', '1.6', 'virginica']
['131', '7.4', '2.8', '6.1', '1.9', 'virginica']['132', '7.9', '3.8', '6.4', '2', 'virginica']
['133', '6.4', '2.8', '5.6', '2.2', 'virginica']['134', '6.3', '2.8', '5.1', '1.5', 'virginica']
['135', '6.1', '2.6', '5.6', '1.4', 'virginica']['136', '7.7', '3', '6.1', '2.3', 'virginica']
['137', '6.3', '3.4', '5.6', '2.4', 'virginica']['138', '6.4', '3.1', '5.5', '1.8', 'virginica']
['139', '6', '3', '4.8', '1.8', 'virginica']['140', '6.9', '3.1', '5.4', '2.1', 'virginica']
['141', '6.7', '3.1', '5.6', '2.4', 'virginica']['142', '6.9', '3.1', '5.1', '2.3', 'virginica']
['143', '5.8', '2.7', '5.1', '1.9', 'virginica']['144', '6.8', '3.2', '5.9', '2.3', 'virginica']
['145', '6.7', '3.3', '5.7', '2.5', 'virginica']['146', '6.7', '3', '5.2', '2.3', 'virginica']
['147', '6.3', '2.5', '5', '1.9', 'virginica']['148', '6.5', '3', '5.2', '2', 'virginica']
['149', '6.2', '3.4', '5.4', '2.3', 'virginica']['150', '5.9', '3', '5.1', '1.8', 'virginica']


3:数据清理:去掉索引号

iris_list = []
for row in iris_data:
    iris_list.append(tuple(row[1:]))


每行三组数据输出是否正确

i = 0
for x in iris_list:
    i+=1
    print(x, end=' ')
    if i % 3 == 0:
        print()


('5.1', '3.5', '1.4', '0.2', 'setosa') ('4.9', '3', '1.4', '0.2', 'setosa') ('4.7', '3.2', '1.3', '0.2', 'setosa') 
('4.6', '3.1', '1.5', '0.2', 'setosa') ('5', '3.6', '1.4', '0.2', 'setosa') ('5.4', '3.9', '1.7', '0.4', 'setosa') 
('4.6', '3.4', '1.4', '0.3', 'setosa') ('5', '3.4', '1.5', '0.2', 'setosa') ('4.4', '2.9', '1.4', '0.2', 'setosa') 
('4.9', '3.1', '1.5', '0.1', 'setosa') ('5.4', '3.7', '1.5', '0.2', 'setosa') ('4.8', '3.4', '1.6', '0.2', 'setosa') 
('4.8', '3', '1.4', '0.1', 'setosa') ('4.3', '3', '1.1', '0.1', 'setosa') ('5.8', '4', '1.2', '0.2', 'setosa') 
('5.7', '4.4', '1.5', '0.4', 'setosa') ('5.4', '3.9', '1.3', '0.4', 'setosa') ('5.1', '3.5', '1.4', '0.3', 'setosa') 
('5.7', '3.8', '1.7', '0.3', 'setosa') ('5.1', '3.8', '1.5', '0.3', 'setosa') ('5.4', '3.4', '1.7', '0.2', 'setosa') 
('5.1', '3.7', '1.5', '0.4', 'setosa') ('4.6', '3.6', '1', '0.2', 'setosa') ('5.1', '3.3', '1.7', '0.5', 'setosa') 
('4.8', '3.4', '1.9', '0.2', 'setosa') ('5', '3', '1.6', '0.2', 'setosa') ('5', '3.4', '1.6', '0.4', 'setosa') 
('5.2', '3.5', '1.5', '0.2', 'setosa') ('5.2', '3.4', '1.4', '0.2', 'setosa') ('4.7', '3.2', '1.6', '0.2', 'setosa') 
('4.8', '3.1', '1.6', '0.2', 'setosa') ('5.4', '3.4', '1.5', '0.4', 'setosa') ('5.2', '4.1', '1.5', '0.1', 'setosa') 
('5.5', '4.2', '1.4', '0.2', 'setosa') ('4.9', '3.1', '1.5', '0.2', 'setosa') ('5', '3.2', '1.2', '0.2', 'setosa') 
('5.5', '3.5', '1.3', '0.2', 'setosa') ('4.9', '3.6', '1.4', '0.1', 'setosa') ('4.4', '3', '1.3', '0.2', 'setosa') 
('5.1', '3.4', '1.5', '0.2', 'setosa') ('5', '3.5', '1.3', '0.3', 'setosa') ('4.5', '2.3', '1.3', '0.3', 'setosa') 
('4.4', '3.2', '1.3', '0.2', 'setosa') ('5', '3.5', '1.6', '0.6', 'setosa') ('5.1', '3.8', '1.9', '0.4', 'setosa') 
('4.8', '3', '1.4', '0.3', 'setosa') ('5.1', '3.8', '1.6', '0.2', 'setosa') ('4.6', '3.2', '1.4', '0.2', 'setosa') 
('5.3', '3.7', '1.5', '0.2', 'setosa') ('5', '3.3', '1.4', '0.2', 'setosa') ('7', '3.2', '4.7', '1.4', 'versicolor') 
('6.4', '3.2', '4.5', '1.5', 'versicolor') ('6.9', '3.1', '4.9', '1.5', 'versicolor') ('5.5', '2.3', '4', '1.3', 'versicolor') 
('6.5', '2.8', '4.6', '1.5', 'versicolor') ('5.7', '2.8', '4.5', '1.3', 'versicolor') ('6.3', '3.3', '4.7', '1.6', 'versicolor') 
('4.9', '2.4', '3.3', '1', 'versicolor') ('6.6', '2.9', '4.6', '1.3', 'versicolor') ('5.2', '2.7', '3.9', '1.4', 'versicolor') 
('5', '2', '3.5', '1', 'versicolor') ('5.9', '3', '4.2', '1.5', 'versicolor') ('6', '2.2', '4', '1', 'versicolor') 
('6.1', '2.9', '4.7', '1.4', 'versicolor') ('5.6', '2.9', '3.6', '1.3', 'versicolor') ('6.7', '3.1', '4.4', '1.4', 'versicolor') 
('5.6', '3', '4.5', '1.5', 'versicolor') ('5.8', '2.7', '4.1', '1', 'versicolor') ('6.2', '2.2', '4.5', '1.5', 'versicolor') 
('5.6', '2.5', '3.9', '1.1', 'versicolor') ('5.9', '3.2', '4.8', '1.8', 'versicolor') ('6.1', '2.8', '4', '1.3', 'versicolor') 
('6.3', '2.5', '4.9', '1.5', 'versicolor') ('6.1', '2.8', '4.7', '1.2', 'versicolor') ('6.4', '2.9', '4.3', '1.3', 'versicolor') 
('6.6', '3', '4.4', '1.4', 'versicolor') ('6.8', '2.8', '4.8', '1.4', 'versicolor') ('6.7', '3', '5', '1.7', 'versicolor') 
('6', '2.9', '4.5', '1.5', 'versicolor') ('5.7', '2.6', '3.5', '1', 'versicolor') ('5.5', '2.4', '3.8', '1.1', 'versicolor') 
('5.5', '2.4', '3.7', '1', 'versicolor') ('5.8', '2.7', '3.9', '1.2', 'versicolor') ('6', '2.7', '5.1', '1.6', 'versicolor') 
('5.4', '3', '4.5', '1.5', 'versicolor') ('6', '3.4', '4.5', '1.6', 'versicolor') ('6.7', '3.1', '4.7', '1.5', 'versicolor') 
('6.3', '2.3', '4.4', '1.3', 'versicolor') ('5.6', '3', '4.1', '1.3', 'versicolor') ('5.5', '2.5', '4', '1.3', 'versicolor') 
('5.5', '2.6', '4.4', '1.2', 'versicolor') ('6.1', '3', '4.6', '1.4', 'versicolor') ('5.8', '2.6', '4', '1.2', 'versicolor') 
('5', '2.3', '3.3', '1', 'versicolor') ('5.6', '2.7', '4.2', '1.3', 'versicolor') ('5.7', '3', '4.2', '1.2', 'versicolor') 
('5.7', '2.9', '4.2', '1.3', 'versicolor') ('6.2', '2.9', '4.3', '1.3', 'versicolor') ('5.1', '2.5', '3', '1.1', 'versicolor') 
('5.7', '2.8', '4.1', '1.3', 'versicolor') ('6.3', '3.3', '6', '2.5', 'virginica') ('5.8', '2.7', '5.1', '1.9', 'virginica') 
('7.1', '3', '5.9', '2.1', 'virginica') ('6.3', '2.9', '5.6', '1.8', 'virginica') ('6.5', '3', '5.8', '2.2', 'virginica') 
('7.6', '3', '6.6', '2.1', 'virginica') ('4.9', '2.5', '4.5', '1.7', 'virginica') ('7.3', '2.9', '6.3', '1.8', 'virginica') 
('6.7', '2.5', '5.8', '1.8', 'virginica') ('7.2', '3.6', '6.1', '2.5', 'virginica') ('6.5', '3.2', '5.1', '2', 'virginica') 
('6.4', '2.7', '5.3', '1.9', 'virginica') ('6.8', '3', '5.5', '2.1', 'virginica') ('5.7', '2.5', '5', '2', 'virginica') 
('5.8', '2.8', '5.1', '2.4', 'virginica') ('6.4', '3.2', '5.3', '2.3', 'virginica') ('6.5', '3', '5.5', '1.8', 'virginica') 
('7.7', '3.8', '6.7', '2.2', 'virginica') ('7.7', '2.6', '6.9', '2.3', 'virginica') ('6', '2.2', '5', '1.5', 'virginica') 
('6.9', '3.2', '5.7', '2.3', 'virginica') ('5.6', '2.8', '4.9', '2', 'virginica') ('7.7', '2.8', '6.7', '2', 'virginica') 
('6.3', '2.7', '4.9', '1.8', 'virginica') ('6.7', '3.3', '5.7', '2.1', 'virginica') ('7.2', '3.2', '6', '1.8', 'virginica') 
('6.2', '2.8', '4.8', '1.8', 'virginica') ('6.1', '3', '4.9', '1.8', 'virginica') ('6.4', '2.8', '5.6', '2.1', 'virginica') 
('7.2', '3', '5.8', '1.6', 'virginica') ('7.4', '2.8', '6.1', '1.9', 'virginica') ('7.9', '3.8', '6.4', '2', 'virginica') 
('6.4', '2.8', '5.6', '2.2', 'virginica') ('6.3', '2.8', '5.1', '1.5', 'virginica') ('6.1', '2.6', '5.6', '1.4', 'virginica') 
('7.7', '3', '6.1', '2.3', 'virginica') ('6.3', '3.4', '5.6', '2.4', 'virginica') ('6.4', '3.1', '5.5', '1.8', 'virginica') 
('6', '3', '4.8', '1.8', 'virginica') ('6.9', '3.1', '5.4', '2.1', 'virginica') ('6.7', '3.1', '5.6', '2.4', 'virginica') 
('6.9', '3.1', '5.1', '2.3', 'virginica') ('5.8', '2.7', '5.1', '1.9', 'virginica') ('6.8', '3.2', '5.9', '2.3', 'virginica') 
('6.7', '3.3', '5.7', '2.5', 'virginica') ('6.7', '3', '5.2', '2.3', 'virginica') ('6.3', '2.5', '5', '1.9', 'virginica') 
('6.5', '3', '5.2', '2', 'virginica') ('6.2', '3.4', '5.4', '2.3', 'virginica') ('5.9', '3', '5.1', '1.8', 'virginica') 


4:数据统计

1:创建数据类型

datatype = np.dtype([("Sepal.Length", np.str_, 40),
                     ("Sepal.Width", np.str_, 40),
                     ("Petal.Length", np.str_, 40),
                     ("Petal.Width", np.str_, 40),
                     ("Species", np.str_, 40)])
print(datatype)
[('Sepal.Length', '<U40'), ('Sepal.Width', '<U40'), ('Petal.Length', '<U40'), ('Petal.Width', '<U40'), ('Species', '<U40')]


2:创建二维数组

iris_data = np.array(iris_list, dtype = datatype)


print(iris_data)
[('5.1', '3.5', '1.4', '0.2', 'setosa')
 ('4.9', '3', '1.4', '0.2', 'setosa')
 ('4.7', '3.2', '1.3', '0.2', 'setosa')
 ('4.6', '3.1', '1.5', '0.2', 'setosa')
 ('5', '3.6', '1.4', '0.2', 'setosa')
 ('5.4', '3.9', '1.7', '0.4', 'setosa')
 ('4.6', '3.4', '1.4', '0.3', 'setosa')
 ('5', '3.4', '1.5', '0.2', 'setosa')
 ('4.4', '2.9', '1.4', '0.2', 'setosa')
 ('4.9', '3.1', '1.5', '0.1', 'setosa')
 ('5.4', '3.7', '1.5', '0.2', 'setosa')
 ('4.8', '3.4', '1.6', '0.2', 'setosa')
 ('4.8', '3', '1.4', '0.1', 'setosa') ('4.3', '3', '1.1', '0.1', 'setosa')
 ('5.8', '4', '1.2', '0.2', 'setosa')
 ('5.7', '4.4', '1.5', '0.4', 'setosa')
 ('5.4', '3.9', '1.3', '0.4', 'setosa')
 ('5.1', '3.5', '1.4', '0.3', 'setosa')
 ('5.7', '3.8', '1.7', '0.3', 'setosa')
 ('5.1', '3.8', '1.5', '0.3', 'setosa')
 ('5.4', '3.4', '1.7', '0.2', 'setosa')
 ('5.1', '3.7', '1.5', '0.4', 'setosa')
 ('4.6', '3.6', '1', '0.2', 'setosa')
 ('5.1', '3.3', '1.7', '0.5', 'setosa')
 ('4.8', '3.4', '1.9', '0.2', 'setosa') ('5', '3', '1.6', '0.2', 'setosa')
 ('5', '3.4', '1.6', '0.4', 'setosa')
 ('5.2', '3.5', '1.5', '0.2', 'setosa')
 ('5.2', '3.4', '1.4', '0.2', 'setosa')
 ('4.7', '3.2', '1.6', '0.2', 'setosa')
 ('4.8', '3.1', '1.6', '0.2', 'setosa')
 ('5.4', '3.4', '1.5', '0.4', 'setosa')
 ('5.2', '4.1', '1.5', '0.1', 'setosa')
 ('5.5', '4.2', '1.4', '0.2', 'setosa')
 ('4.9', '3.1', '1.5', '0.2', 'setosa')
 ('5', '3.2', '1.2', '0.2', 'setosa')
 ('5.5', '3.5', '1.3', '0.2', 'setosa')
 ('4.9', '3.6', '1.4', '0.1', 'setosa')
 ('4.4', '3', '1.3', '0.2', 'setosa')
 ('5.1', '3.4', '1.5', '0.2', 'setosa')
 ('5', '3.5', '1.3', '0.3', 'setosa')
 ('4.5', '2.3', '1.3', '0.3', 'setosa')
 ('4.4', '3.2', '1.3', '0.2', 'setosa')
 ('5', '3.5', '1.6', '0.6', 'setosa')
 ('5.1', '3.8', '1.9', '0.4', 'setosa')
 ('4.8', '3', '1.4', '0.3', 'setosa')
 ('5.1', '3.8', '1.6', '0.2', 'setosa')
 ('4.6', '3.2', '1.4', '0.2', 'setosa')
 ('5.3', '3.7', '1.5', '0.2', 'setosa')
 ('5', '3.3', '1.4', '0.2', 'setosa')
 ('7', '3.2', '4.7', '1.4', 'versicolor')
 ('6.4', '3.2', '4.5', '1.5', 'versicolor')
 ('6.9', '3.1', '4.9', '1.5', 'versicolor')
 ('5.5', '2.3', '4', '1.3', 'versicolor')
 ('6.5', '2.8', '4.6', '1.5', 'versicolor')
 ('5.7', '2.8', '4.5', '1.3', 'versicolor')
 ('6.3', '3.3', '4.7', '1.6', 'versicolor')
 ('4.9', '2.4', '3.3', '1', 'versicolor')
 ('6.6', '2.9', '4.6', '1.3', 'versicolor')
 ('5.2', '2.7', '3.9', '1.4', 'versicolor')
 ('5', '2', '3.5', '1', 'versicolor')
 ('5.9', '3', '4.2', '1.5', 'versicolor')
 ('6', '2.2', '4', '1', 'versicolor')
 ('6.1', '2.9', '4.7', '1.4', 'versicolor')
 ('5.6', '2.9', '3.6', '1.3', 'versicolor')
 ('6.7', '3.1', '4.4', '1.4', 'versicolor')
 ('5.6', '3', '4.5', '1.5', 'versicolor')
 ('5.8', '2.7', '4.1', '1', 'versicolor')
 ('6.2', '2.2', '4.5', '1.5', 'versicolor')
 ('5.6', '2.5', '3.9', '1.1', 'versicolor')
 ('5.9', '3.2', '4.8', '1.8', 'versicolor')
 ('6.1', '2.8', '4', '1.3', 'versicolor')
 ('6.3', '2.5', '4.9', '1.5', 'versicolor')
 ('6.1', '2.8', '4.7', '1.2', 'versicolor')
 ('6.4', '2.9', '4.3', '1.3', 'versicolor')
 ('6.6', '3', '4.4', '1.4', 'versicolor')
 ('6.8', '2.8', '4.8', '1.4', 'versicolor')
 ('6.7', '3', '5', '1.7', 'versicolor')
 ('6', '2.9', '4.5', '1.5', 'versicolor')
 ('5.7', '2.6', '3.5', '1', 'versicolor')
 ('5.5', '2.4', '3.8', '1.1', 'versicolor')
 ('5.5', '2.4', '3.7', '1', 'versicolor')
 ('5.8', '2.7', '3.9', '1.2', 'versicolor')
 ('6', '2.7', '5.1', '1.6', 'versicolor')
 ('5.4', '3', '4.5', '1.5', 'versicolor')
 ('6', '3.4', '4.5', '1.6', 'versicolor')
 ('6.7', '3.1', '4.7', '1.5', 'versicolor')
 ('6.3', '2.3', '4.4', '1.3', 'versicolor')
 ('5.6', '3', '4.1', '1.3', 'versicolor')
 ('5.5', '2.5', '4', '1.3', 'versicolor')
 ('5.5', '2.6', '4.4', '1.2', 'versicolor')
 ('6.1', '3', '4.6', '1.4', 'versicolor')
 ('5.8', '2.6', '4', '1.2', 'versicolor')
 ('5', '2.3', '3.3', '1', 'versicolor')
 ('5.6', '2.7', '4.2', '1.3', 'versicolor')
 ('5.7', '3', '4.2', '1.2', 'versicolor')
 ('5.7', '2.9', '4.2', '1.3', 'versicolor')
 ('6.2', '2.9', '4.3', '1.3', 'versicolor')
 ('5.1', '2.5', '3', '1.1', 'versicolor')
 ('5.7', '2.8', '4.1', '1.3', 'versicolor')
 ('6.3', '3.3', '6', '2.5', 'virginica')
 ('5.8', '2.7', '5.1', '1.9', 'virginica')
 ('7.1', '3', '5.9', '2.1', 'virginica')
 ('6.3', '2.9', '5.6', '1.8', 'virginica')
 ('6.5', '3', '5.8', '2.2', 'virginica')
 ('7.6', '3', '6.6', '2.1', 'virginica')
 ('4.9', '2.5', '4.5', '1.7', 'virginica')
 ('7.3', '2.9', '6.3', '1.8', 'virginica')
 ('6.7', '2.5', '5.8', '1.8', 'virginica')
 ('7.2', '3.6', '6.1', '2.5', 'virginica')
 ('6.5', '3.2', '5.1', '2', 'virginica')
 ('6.4', '2.7', '5.3', '1.9', 'virginica')
 ('6.8', '3', '5.5', '2.1', 'virginica')
 ('5.7', '2.5', '5', '2', 'virginica')
 ('5.8', '2.8', '5.1', '2.4', 'virginica')
 ('6.4', '3.2', '5.3', '2.3', 'virginica')
 ('6.5', '3', '5.5', '1.8', 'virginica')
 ('7.7', '3.8', '6.7', '2.2', 'virginica')
 ('7.7', '2.6', '6.9', '2.3', 'virginica')
 ('6', '2.2', '5', '1.5', 'virginica')
 ('6.9', '3.2', '5.7', '2.3', 'virginica')
 ('5.6', '2.8', '4.9', '2', 'virginica')
 ('7.7', '2.8', '6.7', '2', 'virginica')
 ('6.3', '2.7', '4.9', '1.8', 'virginica')
 ('6.7', '3.3', '5.7', '2.1', 'virginica')
 ('7.2', '3.2', '6', '1.8', 'virginica')
 ('6.2', '2.8', '4.8', '1.8', 'virginica')
 ('6.1', '3', '4.9', '1.8', 'virginica')
 ('6.4', '2.8', '5.6', '2.1', 'virginica')
 ('7.2', '3', '5.8', '1.6', 'virginica')
 ('7.4', '2.8', '6.1', '1.9', 'virginica')
 ('7.9', '3.8', '6.4', '2', 'virginica')
 ('6.4', '2.8', '5.6', '2.2', 'virginica')
 ('6.3', '2.8', '5.1', '1.5', 'virginica')
 ('6.1', '2.6', '5.6', '1.4', 'virginica')
 ('7.7', '3', '6.1', '2.3', 'virginica')
 ('6.3', '3.4', '5.6', '2.4', 'virginica')
 ('6.4', '3.1', '5.5', '1.8', 'virginica')
 ('6', '3', '4.8', '1.8', 'virginica')
 ('6.9', '3.1', '5.4', '2.1', 'virginica')
 ('6.7', '3.1', '5.6', '2.4', 'virginica')
 ('6.9', '3.1', '5.1', '2.3', 'virginica')
 ('5.8', '2.7', '5.1', '1.9', 'virginica')
 ('6.8', '3.2', '5.9', '2.3', 'virginica')
 ('6.7', '3.3', '5.7', '2.5', 'virginica')
 ('6.7', '3', '5.2', '2.3', 'virginica')
 ('6.3', '2.5', '5', '1.9', 'virginica')
 ('6.5', '3', '5.2', '2', 'virginica')
 ('6.2', '3.4', '5.4', '2.3', 'virginica')
 ('5.9', '3', '5.1', '1.8', 'virginica')]


3:将待处理数据的类型转化为float类型

PetalLength = iris_data["Petal.Length"].astype(float)


print(PetalLength)


[1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 1.5 1.6 1.4 1.1 1.2 1.5 1.3 1.4
 1.7 1.5 1.7 1.5 1.  1.7 1.9 1.6 1.6 1.5 1.4 1.6 1.6 1.5 1.5 1.4 1.5 1.2
 1.3 1.4 1.3 1.5 1.3 1.3 1.3 1.6 1.9 1.4 1.6 1.4 1.5 1.4 4.7 4.5 4.9 4.
 4.6 4.5 4.7 3.3 4.6 3.9 3.5 4.2 4.  4.7 3.6 4.4 4.5 4.1 4.5 3.9 4.8 4.
 4.9 4.7 4.3 4.4 4.8 5.  4.5 3.5 3.8 3.7 3.9 5.1 4.5 4.5 4.7 4.4 4.1 4.
 4.4 4.6 4.  3.3 4.2 4.2 4.2 4.3 3.  4.1 6.  5.1 5.9 5.6 5.8 6.6 4.5 6.3
 5.8 6.1 5.1 5.3 5.5 5.  5.1 5.3 5.5 6.7 6.9 5.  5.7 4.9 6.7 4.9 5.7 6.
 4.8 4.9 5.6 5.8 6.1 6.4 5.6 5.1 5.6 6.1 5.6 5.5 4.8 5.4 5.6 5.1 5.1 5.9
 5.7 5.2 5.  5.2 5.4 5.1]


4:排序

np.sort(PetalLength)


print(np.sort(PetalLength))


[1.  1.1 1.2 1.2 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.4 1.4 1.4 1.4 1.4 1.4 1.4
 1.4 1.4 1.4 1.4 1.4 1.4 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
 1.5 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.7 1.7 1.7 1.7 1.9 1.9 3.  3.3 3.3 3.5
 3.5 3.6 3.7 3.8 3.9 3.9 3.9 4.  4.  4.  4.  4.  4.1 4.1 4.1 4.2 4.2 4.2
 4.2 4.3 4.3 4.4 4.4 4.4 4.4 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.5 4.6 4.6 4.6
 4.7 4.7 4.7 4.7 4.7 4.8 4.8 4.8 4.8 4.9 4.9 4.9 4.9 4.9 5.  5.  5.  5.
 5.1 5.1 5.1 5.1 5.1 5.1 5.1 5.1 5.2 5.2 5.3 5.3 5.4 5.4 5.5 5.5 5.5 5.6
 5.6 5.6 5.6 5.6 5.6 5.7 5.7 5.7 5.8 5.8 5.8 5.9 5.9 6.  6.  6.1 6.1 6.1
 6.3 6.4 6.6 6.7 6.7 6.9]


5:数组去重

np.unique(PetalLength)


print(np.unique(PetalLength))


[1.  1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.9 3.  3.3 3.5 3.6 3.7 3.8 3.9 4.  4.1
 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5.  5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9
 6.  6.1 6.3 6.4 6.6 6.7 6.9]


6:对指定列求和、均值、标准差、方差、最小值和最大值

6-1:求和

print(np.sum(PetalLength))
563.7


6-2:均值

print(np.mean(PetalLength))
3.7580000000000005


6-3:标准差

print(np.std(PetalLength))
1.759404065775303


6-4:方差

print(np.var(PetalLength))
3.0955026666666665


6-5:最小值

print(np.min(PetalLength))
1.0


6-6:最大值

print(np.max(PetalLength))
6.9


完整代码

import numpy as np
import csv
iris_data = []
with open("iris.csv") as csvfile:
    csv_reader = csv.reader(csvfile)
    birth_header = next(csv_reader)
    for row in csv_reader:
        iris_data.append(row)
iris_list = []
for row in iris_data:
    iris_list.append(tuple(row[1:]))
datatype = np.dtype([("Sepal.Length", np.str_, 40),
                     ("Sepal.Width", np.str_, 40),
                     ("Petal.Length", np.str_, 40),
                     ("Petal.Width", np.str_, 40),
                     ("Species", np.str_, 40)])
iris_data = np.array(iris_list, dtype = datatype)
PetalLength = iris_data["Petal.Length"].astype(float)
np.sort(PetalLength)
np.unique(PetalLength)
print(np.sum(PetalLength))#求和
print(np.mean(PetalLength))#均值
print(np.std(PetalLength))#标准差
print(np.var(PetalLength))#方差
print(np.min(PetalLength))#最小值
print(np.max(PetalLength))#最大值
目录
相关文章
|
6月前
|
机器学习/深度学习 存储 算法
Python中的NumPy库:数值计算与科学计算的基石
【2月更文挑战第29天】NumPy是Python科学计算的核心库,专注于高效处理大型多维数组和矩阵。其核心是ndarray对象,提供快速数组操作和数学运算,支持线性代数、随机数生成等功能。NumPy广泛应用于数据处理、科学计算和机器学习,简化了矩阵运算、统计分析和算法实现,是数据科学和AI领域的重要工具。
|
3月前
|
存储 并行计算 测试技术
NumPy 性能优化:提升 Python 数值计算的速度
【8月更文第30天】Python 是一种广泛使用的编程语言,在科学计算领域尤其受欢迎。然而,由于 Python 的动态类型和解释执行机制,其在处理大规模数值数据时可能会显得相对较慢。为了克服这一限制,NumPy(Numerical Python)库提供了高性能的多维数组对象以及一系列用于操作这些数组的函数。本文将探讨如何利用 NumPy 来提高 Python 中数值运算的效率。
364 0
|
6月前
|
存储 索引 Python
python学习——NumPy数值计算基础
NumPy基础知识概览:涉及nan(非数字)和inf(无穷)的概念,nan在文件读取或不适当计算时出现,inf在除0操作中出现。数组操作有深拷贝(a=b.copy())、浅拷贝(a=b[:])和引用(a=b)。创建数组方式多样,如`np.array()`、`np.arange()`等。数据类型转换如`np.float64()`、`np.int8()`。随机数生成包含均匀分布、正态分布等。数组索引和切片支持多维操作。改变数组形状用`reshape()`,展平用`ravel()`和`flatten()`。矩阵运算包括加减乘、转置、逆矩阵等。
79 2
python学习——NumPy数值计算基础
|
存储 索引 Python
初识NumPy:Python中的数值计算库
NumPy(Numeric Python)是Python的一种开源的数值计算扩展。这种工具可用于存储和处理大型矩阵,使得在Python中进行数学运算变得更为便捷高效。
初识NumPy:Python中的数值计算库
|
存储 Python
Numpy数值计算
Numpy数值计算
107 0
|
Python
numpy基础实战笔记(基础篇)
陈年老货了,以前忘记发了,hhh
71 0
|
存储 人工智能 大数据
【人工智能】【Python】Numpy基础
【人工智能】【Python】Numpy基础
150 0
【人工智能】【Python】Numpy基础
|
机器学习/深度学习 存储 数据挖掘
NumPy数据分析基础:数组形态转换转置操作一文详解
NumPy数据分析基础:数组形态转换转置操作一文详解
223 0
NumPy数据分析基础:数组形态转换转置操作一文详解
|
机器学习/深度学习 数据挖掘 BI
NumPy数据分析基础:ndarray数组运算基本操作及切片索引迭代
NumPy数据分析基础:ndarray数组运算基本操作及切片索引迭代
148 0
NumPy数据分析基础:ndarray数组运算基本操作及切片索引迭代