美文网首页
Python高频函数

Python高频函数

作者: 天使的流浪 | 来源:发表于2018-12-21 19:16 被阅读0次

1.zip函数
作用:用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表;
语法:
zip([iterable, ...])
实例:

a = [1, 2]
b = [4, 5]
c = zip(a, b)
print(list(c))
# [(1, 4), (2, 5)]
  1. groupby函数与agg函数
    groupby:数据分组
    agg:对groupby分组的数据,使用统计函数,并对结果命名;
import pandas as pd
df = pd.DataFrame({
    'key1': ['a', 'a', 'b', 'b', 'a'],
    'data1': [1, 2, 3, 4, 5]})
print(df)
data1 = df.groupby(['key1'])['data1'].sum()
print(data1)
# as_index:'key1'中元素是否作为索引列(默认作为索引列)
data2 = df.groupby(['key1'], as_index=False)['data1'].agg({'key_sum': 'sum'})
print(data2)
'''
   data1 key1
0      1    a
1      2    a
2      3    b
3      4    b
4      5    a
key1
a    8
b    7
Name: data1, dtype: int64
  key1  key_sum
0    a        8
1    b        7
'''
  1. apply函数
    当在pandas上使用时,对于pandas中的一列使用一个特定函数处理时,可以使用apply;
import pandas as pd
df = pd.DataFrame({
     'key1': [1, 2, 3],
     'key2': [6, 7, 8],
     'key3': [11, 12, 13]
})
print(df)
def data_sum(row):
    if row >= 2:
        return 1
    else:
        return 0
print('*************')
temp = df['key1'].apply(data_sum)
print(temp)
'''
   key1  key2  key3
0     1     6    11
1     2     7    12
2     3     8    13
*************
0    0
1    1
2    1
Name: key1, dtype: int64
'''

4.eval函数
作用:将字符串string对象转化为有效的表达式参与求值运算返回计算结果;

str = '{"name": "Bob", "age":21, "sex":"male"}'
str1 = eval(str)
print(str1)
# {'name': 'Bob', 'age': 21, 'sex': 'male'}
  1. 数据拼接
    numpy&tensorflow中数据拼接参考:
    https://www.jianshu.com/p/cfe655cb5dd6
    pandas中数据拼接:
    1)concat函数
pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False,
       keys=None, levels=None, names=None, verify_integrity=False)
参数:
objs: series,dataframe或者是panel构成的序列lsit 
axis: 需要合并链接的轴,0是行,1是列 
join:连接的方式 inner,或者outer

2)merge函数

pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None,
         left_index=False, right_index=False, sort=True,
         suffixes=('_x', '_y'), copy=True, indicator=False)

left: 一个dataframe对象
right: 另一个dataframe对象
how: 可以是'left', 'right', 'outer', 'inner'. 默认为inner。
on: 列名,两个dataframe都有的列。如果不传参数,
    而且left_index和right_index也等于False,
    则默认把两者交叉/共有的列作为链接键(join keys)。
    可以是一个列名,也可以是包含多个列名的list。
left_on: 左边dataframe的列会用做keys。可以是列名,
    或者与dataframe长度相同的矩阵array。
right_on: 右边同上。
left_index: 如果为Ture,用左侧dataframe的index作为
    连接键。如果是多维索引,level数要跟右边相同才行。
right_index: 右边同上。
sort: 对合并后的数据框排序,以连接键。
suffixes: 一个tuple,包字符串后缀,用来加在重叠的列名后面。
    默认是('_x','_y')。
copy: 默认Ture,复制数据。
indicator: 布尔型(True/FALSE),或是字符串。
    如果为True,合并之后会增加一列叫做'_merge'。
    是分类数据,用left_only, right_only, both来标记
    来自左边,右边和两边的数据。

相关文章

  • Python高频函数

    1.zip函数作用:用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表;...

  • 防抖节流

    函数防抖是:触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间 函数节流是:高频事...

  • JS高频功能优化之函数节流和函数防抖

    JS高频功能优化之函数节流和函数防抖 一.基本概念 什么是高频功能? “高频”望文取义就是“很快的”;在JavaS...

  • Pytorch常用函数集锦

    Pytorch的函数使用频率也符合 20-80 法则: 20%的函数高频使用 80%的函数低频使用本文总结一下高频...

  • 前端知识点

    1、函数防抖与节流--函数防抖(debounce):触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被...

  • Udacity.深度学习.用 Python 统计字数.2017-

    用 Python 统计高频字数python排序问题Python标准库——collections模块的Counter...

  • 12-函数节流

    1.什么是函数节流[throttle]?函数节流也是优化高频率执行js代码的一种手段可以减少高频调用函数的执行次数...

  • 函数防抖&函数节流

    什么是函数防抖 / 节流 函数防抖和函数节流:优化高频率执行js代码的一种手段,可以让被调用的函数在一次连续的高频...

  • 使用sklearn+jieba分词写的文本分类

    结巴分词是对中文语言进行处理的一个Python模块 jieba分词的这个函数返回的高频词效果不太理想,在实际中我没...

  • 防抖和节流

    节流 是在高频出发函数的时候,如果当前函数正在执行,则再触发的函数就不执行了。 防抖 是高频发生时,只执行最后一次...

网友评论

      本文标题:Python高频函数

      本文链接:https://www.haomeiwen.com/subject/lmtvkqtx.html