版本资讯: Spyder->python3.7 pandas版本0.23.4 假设我们用pandas的dataFrame来存学生的成绩资料表: import pandas as pd score...
版本号新闻资讯:
Spyder->python3.7
pandas版本号0.23.4
假定大家用pandas的dataFrame来存学员的考试成绩材料表:
import pandas as pd
scores = {"学籍号":["x01","x02","x03","x04","x05"],
"系所":["A","C","B", "B","A"],
"名字":["小亮","小亮","小赵","小茂","花朵"],
"国文":[80,55,75,23,12]}
score_df = pd.DataFrame.from_dict(scores)
print(score_df)
結果:
学籍号 系所 名字 国文
0 x01 A 小亮 80
1 x02 C 小亮 55
2 x03 B 小赵 75
3 x04 B 小茂 23
4 x05 A 花朵 12
这张表纪录了每名学员的国文考试成绩
增加一行(column)
那假如要增加数学课考试成绩怎幺办呢?
第一种书写能够 在最终一行(column)增加,
立即特定值:
import pandas as pd
scores = {"学籍号":["x01","x02","x03","x04","x05"],
"系所":["A","C","B", "B","A"],
"名字":["小亮","小亮","小赵","小茂","花朵"],
"国文":[80,55,75,23,12]}
score_df = pd.DataFrame.from_dict(scores)
score_df["数学课"]=[90,70,45,80,60]
print(score_df)
結果:
学籍号 系所 名字 国文 数学课
0 x01 A 小亮 80 90
1 x02 C 小亮 55 70
2 x03 B 小赵 75 45
3 x04 B 小茂 23 80
4 x05 A 花朵 12 60
第二种书写可以用insert命令,
在特定的index部位插进材料,
範例:
import pandas as pd
scores = {"学籍号":["x01","x02","x03","x04","x05"],
"系所":["A","C","B", "B","A"],
"名字":["小亮","小亮","小赵","小茂","花朵"],
"国文":[80,55,75,23,12]}
score_df = pd.DataFrame.from_dict(scores)
score_df.insert(3,"数学课",[90,70,45,80,60]) #第一个主要参数是插进的index部位
print(score_df)
結果:
学籍号 系所 名字 数学课 国文
0 x01 A 小亮 90 80
1 x02 C 小亮 70 55
2 x03 B 小赵 45 75
3 x04 B 小茂 80 23
4 x05 A 花朵 60 12
增加一列(row)
那怎样增加一位学员呢?
步骤是先创一个新的dataFrame,
再用append方式合併dataFrame,
範例:
import pandas as pd
scores = {"学籍号":["x01","x02","x03","x04","x05"],
"系所":["A","C","B", "B","A"],
"名字":["小亮","小亮","小赵","小茂","花朵"],
"国文":[80,55,75,23,12]}
score_df = pd.DataFrame.from_dict(scores)
score_df["数学课"]=[90,70,45,80,60]
# print(score_df)
#关键: 先创一个新的dataFrame再合併
new = pd.DataFrame.from_dict( {"学籍号": ["x06"],
"系所":["A"],
"名字":["小倪"],
"国文":[20],
"数学课":[25]})
# print(new)
score_df = score_df.append(new,ignore_index=True) # ignore_index=True,表明不按原先的数据库索引,从0开始全自动增长
print(score_df)
結果:
学籍号 系所 名字 国文 数学课
0 x01 A 小亮 80 90
1 x02 C 小亮 55 70
2 x03 B 小赵 75 45
3 x04 B 小茂 23 80
4 x05 A 花朵 12 60
5 x06 A 小倪 20 25