*** python之数据处理与分析常规问题处理**
*
本文思路摘要:
1,讲述数据处理的数据集获取方式;
2.python处理数据常用api讲解;
3.常见问题报错解决;
数据集如何采集;
1.登录kaggle官网获取数据集,官网连接:https://www.kaggle.com/
2.英语网站翻译问题:安装relingo插件,实现英语难词解释,全选也可全文翻译;
插件如图:
puthon处理数据集常用api解释:
主要使用numpy和pandas;
api 个人笔记:
import numpy as np
import pandas as pd
array = np.array([1, 2, 3])
print(array)
series = pd.Series(data=array)
print(series)
print(type(series))
#%%
pd_series = pd.Series(data=array, index=[‘a’, ‘b’, ‘c’])# 添加索引
print(pd_series) # 自带打印类型
print(type(pd_series))
series = pd.Series((1,2,3)) #默认索引0~n
print(series)
#%%
s = pd.Series({‘a’: 1, ‘b’: 2, ‘c’: 3}) # 字典传参
print(s)
print(type(s))
#%%
def1=([{‘a’: 1, ‘b’: 2, ‘c’: 3}])
frame = pd.DataFrame(def1)
print(frame)
def1=pd.DataFrame({‘id’:[1,2,3],‘age’:[22,23,45],‘name’:[‘zhanglaing’,“xufengnian”,“huzhi”]},columns=[“name”,“age”,“id”])
print(def1)
#%%
def2=pd.DataFrame(data={‘id’:[1,2,3],‘name’:[‘zhangla’,“xufengnian”,“huzanfenghi”]})
print(def2)
#%%
def3=pd.DataFrame(data=[(1,“xufengni”,23),(2,“gg”,45)])
print(def3)
#%%
csv = pd.read_csv(‘/root/export/data/nobel_prizes.csv’, index_col=‘id’)
#print(csv)
head = csv.head()
#print(head)
loc = csv.loc[941]
print(loc)
#%%
pd_series1 = pd.Series(data=[1, 2, 3, 4, ], index=[‘a’, ‘b’, ‘c’, ‘d’])
print(pd_series1)
print(len(pd_series1))
print(pd_series1.head(2))
print(f"list{pd_series.to_list}",end=‘\n’)
to_list = pd_series1.to_list
print(to_list)
print(pd_series1.tail())
print(pd_series1.size)
#%%
import pandas as pd
read_csv = pd.read_csv(‘/root/export/data/nobel_prizes.csv’, index_col=‘id’)
read_csv.head()
#%%
loc_ = read_csv.loc[945]
print(loc_)
print(type(loc_))
print(loc_.dtype)
print(loc_[‘year’].dtype) # 打印指定元素类型
print(
loc_.shape
)# 维度
print(loc_.size) #打印元素个数
print(loc_.values) # 获取指定元素的所有值
print(loc_.ages_sort_index) # 获取指定列的索引
print(loc_.ages_sort_index)
print(loc_.keys) # todo 获取指定列的值
print(loc_.keys()) # todo 等同于获取索引
#%%
s1 = pd.Series(data=[1, 2, 3, 4, 2, 3], index=[‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’])
print(type(s1.to_list)) # <class ‘method’>
print(type(s1.to_frame())) # <class ‘pandas.core.frame.DataFrame’>
print(s1.max()) # 最大值
print(s1.min()) # 最小值
print(s1.sum()) #求和
print(s1.mean()) # 平均值
print(s1.drop_duplicates()) #去重 返回对象
print(s1.unique()) #去重 返回数组
print(s1.sort_values(ascending=True)) # 升序
print(s1.sort_values(ascending=False)) # 降序
print(s1.value_counts()) # 统计每个元素出现的次数
#%%
pd_read_csv = pd.read_csv(‘/root/export/data/movie.csv’)
movie = pd_read_csv
print(movie)
#movie.head()
movie.director_name # 对象.列名 注意名字需要手写不会自动补偿
movie[‘director_name’]
actor___facebook_likes = movie.actor_1_facebook_likes
actor___facebook_likes.head() # 获取点赞数的前五条 api的灵活运用
movie[‘director_name’].value_counts() #不同导演的电影
movie[‘director_name’].count() #统计有多少导演
movie[‘director_name’].shape # 统计维度
movie[‘director_name’].describe() # 统计导演详细信息
df = pd.read_csv(‘/root/export/data/scientists.csv’)
print(df)
df_values=[False, True, True, False, False, False, True, False] # true 表示当前列显示 false代表当前列不显示
ages = df[‘Age’]
print(type(ages))
print(ages.mean())
df[df[‘Age’]>df.Age.mean()]
df.hist()
#%%
import pandas as pd
ages=df.Age
print(ages)
counts = df.value_counts()
print(counts)
#%%
print(ages+10)
#%%
print(ages*2)
#%%
ages_sort_index = ages.sort_index(ascending=False)
print(ages_sort_index)
#%%
print(ages_sort_index+ages)
#%%
print(ages+pd.Series([1,2,3]))
#%%
#print(movie.describe(exclude=‘int,double’)) # 显示最大值 最小值 分值 统计数量
print(movie.describe(include=‘all’))
#%%
print(movie.info) # 显示基本西信息 行列数
df.info
df.e
#%%
movie2=movie.set_index(‘movie_title’)
print(movie2)
movie2.head()
#%%
#%% md
#%%
#%%
#%%
df=pd.read_csv(‘/root/export/data/scientists.csv’)
print(df)
print(df.index)
print(df.values)
#print(df.describe(exclude=[‘int’,float]))
print(df.describe(include=‘all’))
#%%
movie6=pd.read_csv(‘/root/export/data/movie.csv’)
#movie6.set_index(‘movie_title’) #将指定列设置为索引
movie6.reset_index() # 重置索引
#%%
movie7=pd.read_csv(‘/root/export/data/movie.csv’,index_col=‘movie_title’)
print(movie7)
movie6.index[:5]
print(movie6.columns[:5])
#%%
idx_rename={‘Avatar’: ‘阿凡达’, “Pirates of the Caribbean: At World’s End”: ‘加勒比海盗’}
col_rename = {‘color’: ‘颜色’, ‘director_name’: ‘导演名’}
movie7.rename(index=idx_rename,columns=col_rename)
#%%
movie7=pd.read_csv(‘/root/export/data/movie.csv’,index_col=‘movie_title’)
todo 修改列值 前提是先把数据转成list以方便提取索引 方便后续操作
movie__index_to_list = movie7.index.to_list()
print(movie__index_to_list)
columns_to_list = movie7.columns.to_list
print(columns_to_list)
movie__index_to_list[0]=‘阿凡达’
movie__index_to_list[1]=‘加勒比海盗’
#columns_to_list[0]=‘颜色’
#columns_to_list[0]=‘颜色’
print(movie7) # todo
movie7.head()
movie7.index=movie__index_to_list
movie7.columns=columns_to_list
movie7.head()
#%%
movie = pd.read_csv(‘/root/export/data/movie.csv’,index_col=‘movie_title’)
提取出 行索引名 和 列名, 并转成列表.
index_list = movie.index.tolist()
columns_list = movie.columns.tolist()
修改列表元素值
index_list[0] = ‘阿凡达’
index_list[1] = ‘加勒比海盗’
columns_list[0] = ‘颜色’
columns_list[1] = ‘导演名’
重新把修改后的值, 设置成 行索引 和 列名
movie.index = index_list
movie.columns = columns_list
查看数据
movie.head(5)
#%%
movie = pd.read_csv(‘/root/export/data/movie.csv’,index_col=‘movie_title’)
新增一列 方式一 df[列名]=值
movie[‘has_seen’]=0
print(movie.head())
movie[‘actor_director_facebook_likes’] = (
movie[‘actor_1_facebook_likes’] +
movie[‘actor_2_facebook_likes’] +
movie[‘actor_3_facebook_likes’] +
movie[‘director_facebook_likes’]
)
movie.head()
#%%
#movie.drop(‘has_seen’,axis=‘columns’) # 1 列删除
#movie[‘has_seen’]=0
#movie.drop(‘has_seen’,axis=1) # 默认在最后一行加
print(movie.head())
movie.index
movie.head().drop([0, 1])
#%%
movie.insert(loc=1,column=‘uuu’,value=movie[‘gross’]-movie[‘budget’]) # todo 插入列 不写inplace 默认原始df对象上插入
movie.head()
在这里插入代码片
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、pandas是什么?
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
二、使用步骤
1.引入库
代码如下(示例):
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
2.读入数据
代码如下(示例):
data = pd.read_csv(
'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())
该处使用的url网络请求的数据。
总结
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。