第一章 Python 数据分析之pandas的使用
第一章 Python 数据分析之pandas的使用
第一节: pandas --基础操作(一): Serise 、DataFrame 创建和数据选择 基础操作
第二节: pandas – 基础操作(二): DataFrame 的增删改查、排序操作等基础操作
第三节: pandas – 基础操作(三):pandas 层次化索引创建、数据选择
第二章 Python 数据分析之 时间戳操作
第二章 python 数据分析之numpy的使用
第三章 python 数据可视化之matplotlib的使用
参考: https://pandas.pydata.org/pandas-docs/version/0.25.0/user_guide/advanced.html
文章目录
前言
pandas — DataFrame基础操作(一),主要介绍的是series 和DataFrame的创建、查看数据、选择数据和缺失值的处理。接下来是对DataFrame基础操作的增删改查,其中查即为上一节的选择数据,还包括index和columns的常用的操作方法。
提示:以下是本篇文章正文内容,下面案例可供参考
一、二维 dataFrame 基础操作
1.1 df 数据的增、删、改、查
备注: axis=0 表示列,axis=1 表示行
(1) 增
# 【按列增加】
dd=['aa','bb','cc']
df.insert(0,'dd',dd)# 在第0列,添加名称为dd ,值为dd的数据
job =['aa','bb','cc','dd']
df['job']=job #添加job列
df.loc[:,'job']=['aa','bb','cc'] # 在df最后一列添加job
【按行增加】
df.loc[4]=['aa','bb','cc'] # 在第4行添加等号后边的数据
df_insert = pd.DataFrame({
'job':['aa','bb','cc']},index=[5])
ndf = df.append(df_insert,ingore_index = True) # df_insert 添加的列,ingore_index 默认为False ,不忽略index的值,新生成的df采用df_index的index,True为自己默认生成。
(2) 删
- pop 弹出: a = df.pop(‘columns’) # a 为弹出的内容,df为剩下内容:改变原数据
df =pd.DataFrame({
'a':[1,2,3],'b':[11,12,13],'c':[111,122,133]})
df
a b c
0 1 11 111
1 2 12 122
2 3 13 133
df.pop('a')
0 1
1 2
2 3
Name: a, dtype: int64
df
b c
0 11 111
1 12 122
2 13 133
- del df[‘columns’] # 直接在原数据上修改,删除对应列
del df['b']
df
c
0 111
1 122
2 133
-
drop :不改变原数据
-
columns名称操作
b = df.drop(['columns1',‘columns2’],axis=1,inplace=False) # b 为删除后新的df,单列多列都可操作
-
columns列标号操作:对应的是列的标号,并非名称
x=[1,2] # 1,2为列的标号 c = df.drop[df.columns[x],axis=1,inplace=False]
-
# 列名称操作
df =pd.DataFrame({
'a':[1,2,3],'b':[11,12,13],'c':[111,122,133]})
df
a b c
0 1 11 111
1 2 12 122
2 3 13 133
df.drop(['a','b'],axis=1,inplace=False)
c
0 111
1 122
2 133
# 列标号操作
x=[1,2]
c = df.drop(df.columns[x],axis=1,inplace=False)
c
a
0 1
1 2
2 3
(3) 改
df.loc操作
df
a b c
0 1 11 111
1 2 12 122
2 3 13 133
df.loc[0,['a','b']] =['aa','bb'] # 'a'列和'b'列第一行的数据修改
df
a b c
0 aa bb 111
1 2 12 122
2 3 13 133
df.loc[:,'a'] = ['01','02','03'] # 'a' 列整列数据的修改
df
a b c
0 01 bb 111
1 02 12 122
2 03