有些python包不太常用,但是很实用,能够提升效率,提供更多实用功能。下面是收集的一些包。
pandas-profiling:
用于快速生成数据的概要分析报告
import pandas as pd
import pandas_profiling
data = pd.read_csv('your_data.csv')
profile = data.profile_report()
profile.to_file('output.html')
pycountry:
处理国家和地区的相关信息
import pycountry
country = pycountry.countries.get(name='China')
print(country.alpha_2)
sympy:符号数学计算
from sympy import symbols, diff
x = symbols('x')
f = x**2
df = diff(f, x)
print(df)
itertools
主要是提供了各种迭代的操作,如累加、笛卡尔积、连接多个列表等功能,只需要一句话。
#累加
>>> import itertools
>>> x = itertools.accumulate(range(10))
>>> print(list(x))
[0, 1, 3, 6, 10, 15, 21, 28, 36, 45]
#不重复的所有组合
>>> x = itertools.combinations(range(4), 3)
>>> print(list(x))
[(0, 1, 2), (0, 1, 3), (0, 2, 3), (1, 2, 3)]
dask:
并行计算和大数据处理
import dask.array as da
x = da.random.normal(size=(10000, 10000), chunks=(1000, 1000))
mean = x.mean()
plotly
Python画图的包有很多,如matplotlib,seaborn,plotly等等。Plotly可交互,能够放大、缩小或者是选择图表。
import plotly.express as px
df = px.data.gapminder().query("country=='Canada'")
fig = px.line(df, x="year", y="lifeExp", title='Life expectancy in Canada')
fig.show()
dateutil
这个包中的parse方法,可以根据不同格式的时间输入很智能的给出标准化的时间输出。
from dateutil.parser import parse
In: parse('12nd,July,2019')
Out: datetime.datetime(2019, 7, 12, 0, 0)
In: parse('2018-07-20')
Out: datetime.datetime(2018, 7, 20, 0, 0)
In: parse('20180720')
Out: datetime.datetime(2018, 7, 20, 0, 0)