DataFrame(6):DataFrame的增、删、改、查

1、说明

  • 增:增加一行或一列;
  • 删:删出一行或一列;
  • 改:修改某行或某列;
  • 查:获取Datarame中的值;

2、查:获取值

  这里需求在之前的文章讲述过了,大家可以参考这个文章:http://note.youdao.com/noteshare?id=4c36823786ffae864979fa71dff6f3b1&sub=0B0848DE6BD740FFB5198B8B3DF63EDE

3、增

1)增加行
① df.loc()
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df.loc["f"] = pd.Series([1,2,3,4],index=df.columns)
display(df)

结果如下:
在这里插入图片描述

② df.append():该函数用法很多,这个例子是向append()中传入一个Series
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

x = pd.Series([1,1,1,1],index=list("ABCD"),name="f")
display(x)

df.append(x)

结果如下:
在这里插入图片描述

2)增加列
① 增加一列:df[“新列名”]
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df["E"] = pd.Series([6,6,6,6,6],index=df.index)
display(df)

结果如下:
在这里插入图片描述

② 在指定列后面增加一列:df.insert()
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df.insert(1,"A1",pd.Series([1,1,1,1,1],index=df.index))
df

结果如下:
在这里插入图片描述

4、删

1)删除一行:df.drop(axis=0)
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df.drop(["a","d"],axis=0)

结果如下:
在这里插入图片描述

2)删除一列:df.drop(axis=1)
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df.drop(["B"],axis=1)

结果如下:
在这里插入图片描述
注意:使用drop()函数删除列的时候,如果原地修改df表,则必须要指定inplace=True。
  

3)删除列还有两个函数:del、pop

  这两个函数都属于原地删除df中的列,但是pop()函数删除某一列后,有返回值,返回值就是该删除列(Series),而del属于永久删除列,该列删除后就不存在了。

① del:永久的删除某一列数据
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

del df["C"]

结果如下:
在这里插入图片描述

② pop():删除某列数据,会得到一个返回值Series
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df1 = df.pop("C")
display(df1)
display(df)

结果如下:
在这里插入图片描述

5、改

1)修改某行:df.loc()、df.iloc()
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df.loc["a"] = [1,1,1,1]
display(df)

df.iloc[1] = [6,6,6,6]
display(df)

结果如下:
在这里插入图片描述

扫描二维码关注公众号,回复: 9051476 查看本文章
2)修改某列:df[ ]
df = pd.DataFrame({"A":[1,3,5,7,9],
                   "B":[2,4,6,8,10],
                   "C":[3,6,9,12,15],
                   "D":[1,2,3,4,5]},
                   index=list("abcde"))
display(df)

df["A"] = [1,1,1,1,1]
df

结果如下:
在这里插入图片描述

发布了68 篇原创文章 · 获赞 78 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_41261833/article/details/104239666