AIStudio - 数据准备和特征工程 1 感知数据

AIStudio - 数据准备和特征工程

1 感知数据

1.1文件数据

1.1.1 CSV

打开csv文件1
文件路径—open(文件路径)—csv.reader(open(文件路径))

import csv
#文件路径
csv_file = "/home/aistudio/data/data20465/cities.csv"
#打开文件
f = open(csv_file)
data = csv.reader(f)  
#行一行输出 
for line in data:
    print(line)

打开csv文件2
文件路径—pd.read_csv(文件路径)

import pandas as pd
csv_file = "/home/aistudio/data/data20465/cities.csv"
df = pd.read_csv(csv_file)    # ②
#pd.read_csv? #得到函数参数和使用详情
#pd.read_csv(csv_file, index_col=0)
df

案例

diabetes = pd.read_csv("/home/aistudio/data/data20465/diabetes.csv")   
diabetes.shape  
diabetes.head() #默认()是5 
diabetes.info()
diabetes.dtypes

练习+保存csv文件

import pandas as pd
df = pd.read_csv("/home/aistudio/data/data20465/Bicycle_Counts.csv")
df.head(10)
f.shape[0]

df_new = df.head(10) #取前10个数据
df_new.to_csv("work/files/ten_bicycle.csv")    # 将前10个数据保存路径为本实验平台路径
1.1.2 Excel

aistudio安装第三方模块,以及到上述目录,将所安装包引入到当前搜索列表中

# 在实验平台安装第三方模块,可以仿照下面方法
!mkdir /home/aistudio/external-libraries    # 必须创建此目录,一个项目只能创建一个

# 安装第三方模块到上述目录
!pip install xlrd -t /home/aistudio/external-libraries

!pip install openpyxl -t /home/aistudio/external-libraries

# 安装之后,执行此代码,将所安装包引入到当前搜索列表中
import sys
sys.path.append('/home/aistudio/external-libraries')

读取excel文件
pd.read_excel(文件路径)

#pd.read_excel? #read_excel所有函数参数
jiangsu = pd.read_excel("/home/aistudio/data/data20465/jiangsu.xls")
#jiangsu

保存excel文件
to_excel(文件路径)

jiangsu.to_excel('work/files/jiangsu.xlsx')

案例

cpi = pd.read_excel("/home/aistudio/data/data20465/cpi.xls")
cpi #查看源数据详情

为具体查看函数操作,每一次函数操作后,都输出当前数据及其大小

cpi.columns = cpi.iloc[1]    #取新的数据,行 为源数据1行开始
print(cpi,cpi.shape)
cpi = cpi[2:]    # 新的数据,列 为源数据2列开始
print(cpi,cpi.shape)
cpi.drop([11, 12], axis=0, inplace=True)    # 丢弃2行 数据
print(cpi,cpi.shape)
cpi['cpi_index'] = ['总体消费', '食品烟酒', '衣着', '居住', '生活服务', '交通通信', '教育娱乐', '医保', '其他']    # 新添加列
print(cpi,cpi.shape)
cpi.drop(['指标'], axis=1, inplace=True)    # 丢弃指标列
print(cpi,cpi.shape)
cpi.reset_index(drop=True, inplace=True)    # ⑩
print(cpi,cpi.shape)
cpi.columns.rename('', inplace=True)    # ⑪
print(cpi,cpi.shape)

#输出
cpi.info() 
for column in cpi.columns[:-1]:
    cpi[column] = pd.to_numeric(cpi[column])
print(cpi.dtypes)

源代码输出图像中横坐标的中文月份无法正确显示改进代码如下,问题解决
中文横坐标无法显示问题解决的参考文章:解决AI Studio中matplotlib汉字显示问题-aistudio-qiwsir
其他参考资料: matplotlib官网
>还是没解决,先留一个坑在这里,后面补~

#画图
%matplotlib inline 
import matplotlib.pyplot as plt     # ⑬
plt.bar(cpi.iloc[5, :-1].index, cpi.iloc[5, :-1].values)    # ⑭
plt.grid()    # ⑮

读数据,画柱状图

import pandas as pd
plt.figure(figsize=(15,15)) #更改大小以便图形横坐标基本显示出来
jiangsu = pd.read_excel("/home/aistudio/data/data20465/jiangsu.xls")
plt.bar(jiangsu['name'], jiangsu['area'])

用数据画箱式图
可以用来反映一组或多组连续型定量数据分布的中心位置和散布范围,因形状如箱子而得名。1977年,美国著名数学家John W. Tukey首先在他的著作《Exploratory Data Analysis》中介绍了箱形图

js = pd.read_excel("/home/aistudio/data/data20465/jiangsu.xls",
                  index_col=0)
fig, ax = plt.subplots()
ax.boxplot(js['population'], showmeans=True)
ax.grid(True)
1.1.3 图形文件

打开图形文件
Image.open(图形文件路径)

from PIL import Image    # ○16
color_image = Image.open("work/images/laoqi.png")    # ○17
color_image

一些针对图形文件的操作
变灰+查看变灰后的图片存储数据大小格式

#变灰
gray_image = Image.open("work/images/laoqi.png").convert("L")
gray_image

#输出图片大小
import numpy as np
color_array1 = np.array(color_image) #没变灰
color_array2 = np.array(gray_image) #变灰
print(color_array1.shape,'\n',color_array2.shape) #变灰的第三维消失

cv2库 - opencv-python-CV
cv2.imread(文件路径)

import cv2    # ○18
img = cv2.imread('work/images/laoqi.png', 0) # 读出对应路径图片对应的数值
print(img)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])
from PIL import Image
Image.fromarray(img)

裁剪图片

img = cv2.imread('work/images/laoqi.png', 0)
part_img = img[50:260, 100:280]
Image.fromarray(part_img)

对比色图片

reverse_img = 255 - img    # ○19
Image.fromarray(reverse_img)

图片拼接

import numpy as np
from PIL import Image
import cv2
img1 = cv2.imread('work/images/laoqi.png', -1)
img2 = cv2.imread("work/images/book.png", -1)
part1 = img1[50:260, 100:280]
part2 = img2[300:, 100:280]
new_img = np.hstack((part1, part2))
Image.fromarray(new_img)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

-KWOK-

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

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

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

打赏作者

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

抵扣说明:

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

余额充值