刘早起早起 Crossin的编程教室 2020-09-18

[数据分析]Pandas自测20题_Python



 

Pandas 是用 Python 进行数据分析时最常用也是最强大的工具库。今天我们通过习题的形式整理了 pandas 中一些比较基础的常用操作。如果你是位 Pandas 新手,不妨通过此练习检验一下自己对基础的掌握情况;如果你是高手,欢迎留言给出与答案的不同解法。Here we go!


 1创建DataFrame


题目:将下面的字典创建为DataFrame
data = {"grammer":["Python","C","Java","GO",np.nan,"SQL","PHP","Python"],
       "score":[1,2,np.nan,4,5,6,7,10]}
难度:⭐期望结果

[数据分析]Pandas自测20题_Python_02

答案
df = pd.DataFrame(data)
下文所有题目均基于该数据框给出


 2数据提取
题目:提取含有字符串"Python"的行
难度:⭐⭐期望结果
grammer  score
Python    1.0
Python   10.0
答案
result=df[df['grammer'].str.contains("Python")]

 3提取列名


题目:输出df的所有列名难度期望结果
Index(['grammer', 'score'], dtype='object')
答案
df.columns

 4修改列名
题目:修改第二列列名为'popularity'
难度:⭐⭐答案
df.rename(columns={'score':'popularity'}, inplace = True)

 5字符统计


题目:统计grammer列中每种编程语言出现的次数
难度:⭐⭐答案
df['grammer'].value_counts()

 6缺失值处理


题目:将空值用上下值的平均值填充难度⭐⭐⭐答案
df['popularity'] = df['popularity'].fillna(df['popularity'].interpolate())

7数据提取
题目:提取popularity列中值大于3的行难度:⭐⭐答案
df[df['popularity'] > 3]

 8数据去重


题目:按照grammer进行去重难度⭐⭐答案
df.drop_duplicates(['grammer'])

 9数据计算


题目:计算popularity平均值难度⭐⭐答案
df['popularity'].mean()

10格式转换


题目:将grammer转换为list难度⭐⭐答案
df['grammer'].to_list()

11数据保存


题目:将DataFrame保存为EXCEL难度⭐⭐答案
df.to_excel('filename.xlsx')

12数据查看


题目:查看数据行列数难度答案
df.shape

13数据提取


题目:提取popularity值大于3小于7的行难度⭐⭐答案
df[(df['popularity'] > 3) & (df['popularity'] < 7)]


14位置处理


题目:交换两列位置难度⭐⭐⭐答案
temp = df['popularity']
df.drop(labels=['popularity'], axis=1,inplace = True)
df.insert(0'popularity', temp)

15数据提取


题目:提取popularity列最大值所在行难度⭐⭐答案
df[df['popularity'] == df['popularity'].max()]


16数据查看


题目:查看最后5行数据难度答案
df.tail()


17数据修改


题目:删除最后一行数据难度答案
df = df.drop(labels=0)

18数据修改


题目:添加一行数据['Perl',6.6]难度⭐⭐答案
row={'grammer':'Perl','popularity':6.6}
df = df.append(row,ignore_index=True)


19数据整理


题目:对数据按照"popularity"列值的大小进行排序难度⭐⭐答案
df.sort_values("popularity",inplace=True)


20字符统计


题目:统计grammer列每个字符串的长度难度⭐⭐⭐答案
df['grammer'].map(lambda x: len(x))

以上就是 Pandas 基础20题,当然我们给出的答案并非唯一解法,如果你有有其他实现代码或有相关建议欢迎留言补充。

作者:刘早起早起 

来源:早起Python