Python中numpy的综合练习

import  numpy as np
#2)使用numpy中的loadtxt方法读取iris.csv文件至data对象中。要求如下:读取前四列,读取的数据类型为“float”,跳过标题行,并打印输出data。
data = np.loadtxt('iris.csv',dtype=np.float,delimiter=',',skiprows=1,usecols=[0,1,2,3])
# print(data)
#3) #将所有缺失值(空值)替换为0.2,打印输出替换以后的data。
# print(np.isan(data))
# print(np.count_nonzero(np.isnan(data)))
data[np.isnan(data)]=0.2
# print(data)
#4)去除重复行,并打印输出去重以后的总记录数。
# print(len(data))
# data=np.unique(data,axis=0)
# print(len(data))
#5)分别获取此时data数据集中的前40行及41-80行数据,依次存入对象newdata1和newdata2中。
newdata1=data[:40]
newdata2=data[40:80]
# print(newdata1)
# print(newdata2)
#6)用水平堆叠完成对newdata1和newdata2的合并,合并以后的对象为newdata3,打印输出合并以后的newdata3。
newdata3 = np.hstack([newdata1,newdata2])
# print(newdata3)
#7)获取newdata3中的第一、三列,并存入对象width及length中,查看此时length中的类型及width的内容
width=newdata3[:,0]
length=newdata3[:,2]
# print(width)
# print(type(length))
#8)将width和length中的数据采用垂直堆叠的方式组成新的数据集newdata4,并输出newdata4的内容。
newdata4=np.vstack((width,length))
# print(newdata4)
#9)将newdata4转置为newdata5,输出newdata5中的内容。
newdata5=newdata4.T
# print(newdata5)
#10查询出newdata5中第1列的取值大于等于3的所有数据,然后将这部分数据全部都替换成3.0。
newdata5[:,0][newdata5[:,0]>=3]=3.0
# print(newdata5)
#11)使用np.savetxt()将newdata5保存为newdata5.csv,保存的格式为float并且保留一位小数。
np.savetxt('newdata5.csv',newdata5,delimiter=',',fmt='%0.1f')

你可能感兴趣的:(numpy,python)