6.24学习笔记(seaborn,数据访问)

2023-02-05 13:47:49

散点图

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="whitegrid")				
#加载数据集
diamonds=sns.load_dataset("diamonds")						//从seaborn里加载名为diamonds的数据
print(diamonds)
#针对不同类别的数字型数据的散点图
f,ax=plt.subplots(figsize=(6.5,6.5))
sns.despine(f,left=True,bottom=True)
clarity_ranking=['I1','SI2',"SI1","VS2","VS1","VVS2","VVS1","IF"]
sns.scatterplot(x="carat",y="price",
                hue="clarity",size="depth",
                palette="ch:r=-2,d=.3_r",
                hue_order=clarity_ranking,
                sizes=(1,8),linewidth=0,
                data=diamonds,ax=ax)
plt.show()

在这里插入图片描述
多子图示例

import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks")
#创建数据集具有多个子图
rs=np.random.RandomState(4)
pos=rs.randint(-1,2,(20,5)).cumsum(axis=1)
pos-=pos[:,0,np.newaxis]
step=np.tile(range(5),20)
walk=np.repeat(range(20),5)
df=pd.DataFrame(np.c_[pos.flat,step,walk],
                columns=['position','step','walk'])
#初始化一个网格
grid=sns.FacetGrid(df,col='walk',hue='walk',palette='tab20c',col_wrap=4,height=1.5)			//多面格网
#绘制一条水平线
grid.map(plt.axhline,y=0,ls=':',c='.5')
#Draw a line plot to show the trajectory of each random walk
grid.map(plt.plot,'step','position',marker='o')
#Adjust the tick positions and labels
grid.set(xticks=np.arange(5),yticks=[-3,3],
         xlim=(-.5,4.5),ylim=(-3.5,3.5))
grid.fig.tight_layout(w_pad=1)
plt.show()

在这里插入图片描述
Python数据访问
numpy数据访问示例

import numpy as np
rdata=np.arange(0,16).reshape(4,4)
print(rdata)
rdata.tofile(r'rd1.bin')#文件后缀是bin
rdata.tofile(r'rd1.txt')#文件后缀是txt
bdata=np.fromfile(r'rd1.txt',dtype=np.int32)
print('取出后的信息并未保存存入文件时的数组类型和元素类型信息:')
print(bdata)
bdata.shape=4,4
print("从txt文件中提取:")
print(bdata)
cdata=np.fromfile(r'rd1.bin')
print()
print("从bin文件中提取:")
print(cdata)

结果:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]
取出后的信息并未保存存入文件时的数组类型和元素类型信息:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]
从txt文件中提取:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]

从bin文件中提取:
[2.12199579e-314 6.36598737e-314 1.06099790e-313 1.48539705e-313
1.90979621e-313 2.33419537e-313 2.75859453e-313 3.18299369e-313]

numpy的load和save函数示例

np.save(r'rdata.npy',rdata)
d=np.load(r'rdata.npy')
print(d)

结果:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]

读取一维和二维的数组

import numpy as np
a=np.arange(0,12,0.5).reshape(4,-1)
print(a)
np.savetxt(r'npTxt2.txt',a)#缺省值按照"%.18e"格式保存数据,以空格分隔
print("读取信息:")
print(np.loadtxt(r'npTxt2.txt'))
np.savetxt(r'npTxt3.txt',a,fmt='%d',delimiter=',')#该保存为整数,以逗号分隔
#读入的时候也需要自定逗号分隔(可以看到这样的方式数据失真)
print(np.loadtxt(r'npTxt3.txt',delimiter=','))
  • 作者:Rbdash
  • 原文链接:https://blog.csdn.net/weixin_43621813/article/details/93475458
    更新时间:2023-02-05 13:47:49