【Pandas】给DataFrame赋值、增删行或列

1.创建DataFrame

import numpy as np
import pandas as pd

dates = pd.date_range("20200301", periods=6)
df2 = pd.DataFrame(np.arange(24).reshape((6, 4)), index=dates, columns=["A", "B", "C", "D"])
print(df2)
# 输出结果
#              A   B   C   D
# 2020-03-01   0   1   2   3
# 2020-03-02   4   5   6   7
# 2020-03-03   8   9  10  11
# 2020-03-04  12  13  14  15
# 2020-03-05  16  17  18  19
# 2020-03-06  20  21  22  23

2.赋值

df2.iloc[2, 1] = 10  # 给某个数赋值,先取得该位置再赋值
df2[df2.B > 14] = 0  # 把B列中有大于14的数所在行全部变成0
print(df2)
# 输出结果:
#              A   B   C   D
# 2020-03-01   0   1   2   3
# 2020-03-02   4   5   6   7
# 2020-03-03   8  10  10  11
# 2020-03-04  12  13  14  15
# 2020-03-05   0   0   0   0
# 2020-03-06   0   0   0   0

3.增删行列


df2['E'] = 0  # 添加E列并且赋值为0
df2.loc["20200307", ['A', 'B', 'C']] = [1, 1, 1]  # 新增20200307行,并且给对应的列赋值
df2.insert(1, "H", [1, 1, 1, 1, 1, 1, 1])  # 在第1列后面新增1列H,并且赋值1

df2.pop("H")  # 删除H列
df3 = df2.drop(["20200307"], axis=0)  # 删除一行或多行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章