Python的基础用法(持续更新)

1、去重,并将数据放到列表里面

class_list =list(df["店铺"].drop_duplicates())   # 去重,得到店铺这一列的数据
df2=pd.DataFrame(class_list,columns=['店铺'])  # 将数据放入DataFrame中

2、连接两个表 merge函数

merge( self, right, how="inner", on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=("_x", "_y"), copy=True, indicator=False, validate=None,)

left:参与合并的左侧DataFrame

right:参与合并的右侧DataFrame

how:连接方式:‘inner’(默认);还有,‘outer’、‘left’、‘right’

on:用于连接的列名,必须同时存在于左右两个DataFrame对象中,如果位指定,则以left和right列名的交集作为连接键

left_on:左侧DataFarme中用作连接键的列

right_on:右侧DataFarme中用作连接键的列

left_index:将左侧的行索引用作其连接键

right_index:将右侧的行索引用作其连接键

sort:根据连接键对合并后的数据进行排序,默认为True。有时在处理大数据集时,禁用该选项可获得更好的性能

suffixes:字符串值元组,用于追加到重叠列名的末尾,默认为(‘_x’,‘_y’).例如,左右两个DataFrame对象都有‘data’,则结果中就会出现‘data_x’,‘data_y’

copy:设置为False,可以在某些特殊情况下避免将数据复制到结果数据结构中。默认总是赋值。

3、将使用groupby()函数分组后形成的索引恢复成多列。

df.reset_index(inplace =True)

4、将数据划分范围

pd.cut()

例如:pd.cut(data['zkl'],bins=np.linspace(0,1,21))

5、使用concat()函数,可以实现纵向合并。

df1 = pd.DataFrame([['a', 1], ['b', 2]],columns=['letter', 'number'])

df2 = pd.DataFrame([['c',3], ['d',4]],columns=['letter', 'number'])
pd.concat([df1,df2])

6、astype()函数可用于转化dateframe某一列的数据类型

如将df的“订单编号”这一列,转化为字符串类型。

字符转换,可参考:Pandas数据类型转换的几个小技巧 - 知乎

        df['订单编号'].astype(str)

7、lambda()函数

lambda函数可以使用任意数量的参数,但只能有一个表达式

用法:lambda argument: manipulate(argument)
参数:argument就是这个匿名函数传入的参数,冒号后面是我们对这个参数的操作方法

8、columns

print(df.columns.to_list()) #把列名以列表的方式输出

9、break、continue、return

break:跳出所在的当前整个循环,到外层代码继续执行。

continue:跳出本次循环,从下一个迭代继续运行循环,内层循环执行完毕,外层代码继续运行。

return:直接返回函数,所有该函数体内的代码(包括循环体)都不会再执行。

10、取数据中不为空的行。

the_titanic = titanic[~np.isnan(titanic['age'])]

11、DataFrame转list

hop_list1=Datatemp['店铺'].drop_duplicates().tolist()

12、列表转DataFrame

第一种:两个不同列表转换成为数据框

 第二种:将包含不同子列表的列表转换为数据框

from pandas.core.frame import DataFrame
 
a=[1,2,3,4] #列表a
b=[5,6,7,8] #列表b
 
c={"a":a,
   'b':b}  #将列表a,b装换成字典
 
data=DataFrame(c)
print(data)
from pandas.core.frame import DataFrame
 
a=[[1,2,3,4],[5,6,7,8]]#包含两个不同的子列表[1,2,3,4]和[5,6,7,8]
 
data=DataFrame(a)#这时候是以行为标准写入的
data=data.T#转置之后得到想要的结果
data.rename(columns={0:'a',1:'b'},inplace=True)#注意这里0和1都不是字符串
 
print(data)

13、去除列表中的空值

while '' in list:
    list.remove('')

14、字符串拆分多列

例如:以逗号拆分字符串

b.split(',')

15、SQL去掉空格

去掉左边空格 SELECT LTRIM(pus.USER_CNAME) from u_base_user pus

去掉右边空格 SELECT RTRIM(pus.USER_CNAME) from u_base_user pus

去掉两把空格 SELECT TRIM(pus.USER_CNAME) from u_base_user pus
————————————————
版权声明:本文为CSDN博主「一片星空~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_44691484/article/details/106604634

16、将一列展开为多列。

guige = Data['规格2'].str.split(',',expand = True)
print(Data['规格2'])
Data[['尺寸','sku数量','材质','厚度']] = guige

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值