深度学习——常用库matplotlb,numpy,pandas

pandas

读取csv,并将第一行作为列名

dataframe = pd.read_csv('./data.csv',header=0) 

读取csv,并将第一列作为行名

dataframe = pd.read_csv('./data.csv',index_col=0)   #为1时将第二列指定为行名

读取csv,以第一列作为列名,以第一行作为行名

dataframe = pd.read_csv('./data.csv',index_col=0,header=0) 

读取csv 指定列名,并且第一行不作为列名

dataframe = pd.read_csv('./weather.csv',  header=None,names=['data','hour','temperature'])

创建dataframe ,指定列名和行名

data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
df = pd.DataFrame(data, index=['row1', 'row2', 'row3'], columns=['A', 'B', 'C'])

多个dataframe 横向拼接

pd.concat([df1,df2],axis=1)

删除一列或者多列

data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
# 删除列'B'
df = df.drop('B', axis=1)
#删除多列
df = df.drop(['A','B'], axis=1)

对某一列的所有元素执行相同的操作

df["category"].apply(lamda x:x.split("=")[0])

类别转成数字

df['Product'] = df['Product'].astype('category').cat.codes

one_hot编码

data = {'category': ['A', 'B', 'C', 'A', 'B']}
df = pd.DataFrame(data)
# 对'category'列进行One-Hot编码
df_encoded = pd.get_dummies(df, columns=['category'], prefix='category') 
#prefix='category'用于给生成的新列添加前缀以区分原始列
‘’‘
 category_A  category_B  category_C
0        True       False       False
1       False        True       False
2       False       False        True
3        True       False       False
4       False        True       False
’‘’

ndarray转成Dataframe

import pandas as pd

# 创建一个指定行名的DataFrame
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
df = pd.DataFrame(data, index=['row1', 'row2', 'row3'], columns=['A', 'B', 'C'])

字典转dataframe

data = {
    'A': [1, 2, 3],
    'B': ['a', 'b', 'c'],
    'C': [True, False, True]
}
# 将字典转换为DataFrame
df = pd.DataFrame(data)

对某一列或者某几列进行数据类型的修改

# 创建一个示例DataFrame
data = {'col1': [1, 2, 3, 4], 'col2': ['A', 'B', 'C', 'D']}
df = pd.DataFrame(data)

# 将'col1'列的数据类型从整数修改为浮点数
df['col1'] = df['col1','col2'].astype(float)

df.dropna()
https://www.python100.com/html/04I3F10I6POC.html
获取df的行名和列名

df.columns
df.index

pandas其他常用操作
https://baijiahao.baidu.com/s?id=1771563940419244607&wfr=spider&for=pc





matplotlib

画布与坐标轴的关系
https://zhuanlan.zhihu.com/p/642017315

图像显示

plt.imshow(image, cmap='gray')

图像保存

plt.savefig('my_plot.png',dpi=700)

子图绘制

plt.subplot()和plt.subplots()都是在matplotlib中用于创建子图的函数,但它们有一些不同之处。

plt.subplot()用法:
plt.subplot()允许在单个图形中创建多个子图,并通过指定行数、列数和子图索引来确定每个子图的位置。
示例:plt.subplot(2, 2, 1)表示将当前图形分为2行2列,当前子图的位置是第1个。
plt.subplots()用法:
plt.subplots()创建一个新的Figure对象,并返回一个包含所有子图的Axes对象数组。可以通过索引访问特定子图。
示例:fig, axs = plt.subplots(2,2)会创建一个2x2的子图网格,并返回一个Figure对象fig和包含4个子图Axes对象的数组axs。 主要区别总结如下:
plt.subplot()适合用于创建少量子图并手动控制每个子图的位置。
plt.subplots()适合用于创建大量子图并自动管理它们的位置,可以更方便地对子图进行整体操作。

plt.subplot(2, 2, 1)
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.title('Plot 1')

# 指定第2个子图
plt.subplot(2, 2, 2)
plt.plot([1, 2, 3, 4], [1, 8, 27, 64])
plt.title('Plot 2')

# 指定第3个子图
plt.subplot(2, 2, 3)
plt.plot([1, 2, 3, 4], [1, 10, 100, 1000])
plt.title('Plot 3')

# 指定第4个子图
plt.subplot(2, 2, 4)
plt.plot([1, 2, 3, 4], [1, 2, 3, 4])
plt.title('Plot 4')
# 创建一个2x2的子图布局
fig, axs = plt.subplots(2, 2)

# 在每个子图中绘制内容
axs[0, 0].plot([1, 2, 3, 4], [1, 4, 9, 16])
axs[0, 0].set_title('Plot 1')

axs[0, 1].plot([1, 2, 3, 4], [1, 8, 27, 64])
axs[0, 1].set_title('Plot 2')

axs[1, 0].plot([1, 2, 3, 4], [1, 10, 100, 1000])
axs[1, 0].set_title('Plot 3')

axs[1, 1].plot([1, 2, 3, 4], [1, 2, 3, 4])
axs[1, 1].set_title('Plot 4')

# 显示子图
plt.show()

调整子图间的水平间距和垂直间距

plt.subplots_adjust(wspace=0.5, hspace=0.5)  # 调整水平和垂直间距

设置坐标范围

plt.xlim(0, 6)   # 设置x轴范围为0到6
plt.ylim(0, 30)  # 设置y轴范围为0到30

设置坐标的刻度

plt.xticks([1, 2, 3, 4, 5], ['A', 'B', 'C', 'D', 'E'])  # 设置x轴刻度位置和标签
plt.yticks([0, 5, 10, 15, 20, 25], ['0', '5', '10', '15', '20', '25'])  # 设置y轴刻度位置和标签



numpy

https://blog.csdn.net/qq_62592360/article/details/131504438

参考文献

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千禧皓月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值