文章目录
Pandas数据分析-Task1
记录DataWhale的Pandas数据分析的学习过程,使用的教材为 joyful-pandas。
Task1包含Python与numpy的复习,Python包含列表推导式,匿名函数,zip函数;Nump介绍了一些基本操作;最后是5道练习题。本人完全小白一个,如果有错误希望大家能指正一下。
Python基础复习
列表推导式
1.列表推导式目的:快速生成新的列表,简化程序。
2.列表推导式格式:
[表达式1 for循环语句 0个或多个if或for语句]
列表推导式的执行顺序为先执行[]号内左侧第一个for循环语句,然后嵌套的执行其后的if语句或for语句,在嵌套的最后执行[]号内最左侧的表达式1。有以下语句1:
#语句1
l=[x+y for x in [1,2,3] for y in [3,1,4] if x != y]
print(l)
>输出为[4, 5, 5, 3, 6, 4, 7]
根据列表表达式的执行规则,其等同于语句2。
#语句2
l = []
for x in [1,2,3]:
for y in [3,1,4]:
if x != y:
l.append(x+y)
列表表达式1除了可以是简单的公式,还可以是函数。语句1就可以等效为以下的语句3。
#语句3
def f(x,y)
return x+y
l=[f(x,y) for x in [1,2,3] for y in [3,1,4] if x != y]
print(l)
3.语法糖
value = x if condition else y
此语法糖可以用一个语句实现单分支结构,我们可以把这个语法糖结合到列表推导式中,在语句3的基础上变换,有:
#语句4
l=[f(x,y) if x != y else 0 for x in [1,2,3] for y in [3,1,4] ]
>输出为[4, 0, 5, 5, 3, 6, 0, 4, 7]
map函数
1.作用:根据指定函数对指定序列做映射。
2.用法:
map(函数名, 函数对应的实参序列)
map()函数是python的内置函数,返回的是map对象。上一节说到可以利用列表推导式简单的生成列表,在这里我们同样可以利用map()函数的映射性质生成列表。注意:map()函数返回的是map对象,需要使用list()函数将map对象转化为列表。
3.结合匿名函数:map()函数还可以使用lambda匿名函数做映射,以下是一个例子:
l=list(map(lambda x,y:x+y,range(5),range(5)))
#输出为[0, 2, 4, 6, 8]
zip函数
1.作用:打包多个可迭代对象,可以打包字符串,列表,元组,字典,集合,通常在for循环时使用zip函数。zip函数返回一个元组的迭代器,其中的第 i 个元组包含来自每个可迭代对象的第 i 个元素。这样说有些拗口,下面例子可以帮助理解
2.例子:
x=[1,2,3]
y=[4,5,6]
zipped=zip(x,y)