Python 学习基础pandas刷题(一)

1,将下面的字典创建为DataFrame

import numpy

import pandas as pd

data={"course":["Math","Chinese","English","History",np.nan,"Phycial","Python"],"score":[110,134,158,123,np.nan,710,110]}

df=pd.DataFrame(data)

df

course	score
0	Math	110.0
1	Chinese	134.0
2	English	158.0
3	History	123.0
4	NaN	NaN
5	Phycial	710.0
6	Python	110.0

注释1:

import import()是python的一个内置函数,用于动态加载类和函数。 numpy numpy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。 通常读音【num pai】 pandas pandas是python的一个数据分析包,提供了大量能使我们快速便捷地处理数据的函数和方法。 as 导入模块时对模块进行重命名,也就是给模块起一个别名。

注释2:

字典也是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据。比如有份成绩表数据,语文:79,数学:80,英语:92,这组数据看上去像两个列表,但这两个列表的元素之间有一定的关联关系。如果单纯使用两个列表来保存这组数据,则无法记录两组数据之间的关联关系。

注释3:

DataFrame 一个表格型的数据结构,既有行标签(index),又有列标签(columns),它也被称异构数据表,所谓异构,指的是表格中每列的数据类型可以不同,比如可以是字符串、整型或者浮点型等。

注释4:

由以上那个代码运行(df=pd.DataFrame(data)可以知,df为生成的一个对象(object),可以通过df访问到该数据结构的内容。

2.提取含有字符串“course列为Python”的行

df[df["course"]=="Python"]

	course	score
6	Python	10.0

注释5:

df["course"]可以访问到course所在列在所有元素,而df访问到整个表格。

3.提取分值为110所在的行

df[df["score"]==110]

course	score
0	Math	110.0
6	Python	110.0

4.打印df对象所在的列标签

print(df.columns)

Index([grammer, score], dtype=object)

print(df)

  grammer  score
0  Python    1.0
1       C    2.0
2    java    NaN
3      Go    4.0
4     NaN    5.0
5     SQL    6.0
6     PHP    7.0
7  Python   10.0

注释6:

df.columns访问到所在的列标签

5.修改第二列名成为“popularity”

df.rename(columns={"score":"popularity"},inplace=True)

df

	course	popularity
0	Math	110.0
1	Chinese	134.0
2	English	158.0
3	History	123.0
4	NaN	NaN
5	Phycial	710.0
6	Python	110.0

6.统计course列中每种编程语言出现的次数

df["course"].value_counts()

Math       1
Chinese    1
English    1
History    1
Phycial    1
Python     1
Name: course, dtype: int64

7.统计popularity列中每种编程语言出现的次数

df["popularity"].value_counts()

110.0    2
134.0    1
158.0    1
123.0    1
710.0    1
Name: popularity, dtype: int64

df["popularity"]

0    110.0
1    134.0
2    158.0
3    123.0
4      NaN
5    710.0
6    110.0
Name: popularity, dtype: float64

注释7:

df.value_counts()可以计算出每行出现的次数,同理df["popularity"].value_counts()可以计算出popularity列中每行出现的次数。

注释8:

rename表示重新命名,df.rename(columns={"A":"B"})将A标签修改成B标签。

经验分享 程序员 微信小程序 职场和发展