1、说明
- 增:增加一行或一列;
- 删:删出一行或一列;
- 改:修改某行或某列;
- 查:获取Datarame中的值;
2、查:获取值
这里需求在之前的文章讲述过了,大家可以参考这个文章:DataFrame(4):DataFrame元素的获取方式
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)
结果如下:
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
结果如下: