总是记不住代码的菜鸡一只~
pandas
查看某列各个取值的个数
wycgps2019['ENCRYPT'].value_counts()
对于df的某列保留n位小数
- 方法一 round(不知道为什么有时候不起作用)
df=wycorder20190603[['DEST_LATITUDE','DEST_LATITUDE']]
df=df.round(3)
- 方法二
df=wycorder20190603[['DEST_LATITUDE','DEST_LATITUDE']]
df=df.round(3)
df.head()
formater="{0:.03f}".format
df.applymap(formater)
- 方法三
a=wycorder20190603['DEST_LATITUDE'].apply(lambda x:round(x,3))
a
dataframe重命名
冒号后的是新的名字
taxiorder2019 = taxiorder2019.rename(columns={'CAR_NO':'CARNO'})
dataframe排序
taxiorder2019.sort_values(by=['CARNO','GETON_DATE'], inplace=True)
dataframe重新设置索引
taxiorder2019.reset_index(inplace=True, drop=True)
将series转化为dataframe
#想以表格形式显示
pd.DataFrame(taxigps2019['CARNO'].unique())
#导出到txt
#pd.DataFrame(taxigps2019['CARNO'].unique()).to_csv('tmp.txt',index=None)
读取聚合函数的某个值
taixgps2019['OPERATING_STATUS'].value_counts()
#1 9540708
#6 6916642
#8 371497
#Name: OPERATING_STATUS, dtype: int64
taixgps2019['OPERATING_STATUS'].value_counts().loc[6]
#6916642
将输出文件按时间命名
#将输出数据按照时间命名
import time
def get_local_time():
return time.strftime("%Y-%m-%d-%H%M", time.localtime())
time_stamp = get_local_time()
test[['id','isDefault']].to_csv('./result%s-test_sub.csv'%time_stamp, index=False)
jupyter
jupyter显示所有行、列
#显示所有列
pd.set_option('display.max_columns', None)
#显示所有行
pd.set_option('display.max_rows', None)
#设置value的显示长度为100,默认为50
pd.set_option('max_colwidth',100)
jupyter显示所有输出,而不用加print
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
#这两行代码作用是可以显示所有输出,而不用加print
InteractiveShell.ast_node_interactivity = "last_expr"
#这个代码作用只显示最后一行的输出
jupyter中查看python版本
import sys
sys.version
matplotlib
保存图片
#matplotlib:
plt.hist(data['Price'])
plt.savefig('hist.png') #路径+文件名
#seaborn:
sns_hist = sns.distplot(data['Price'])
fig = sns_hist.get_figure()fig.savefig('hist.png') #路径+文件名
机器学习&深度学习
保存模型及读取
保存模型
import os
from sklearn.externals import joblib
# 创建文件目录
dirs = 'testModel'
if not os.path.exists(dirs):
os.makedirs(dirs)
# 保存模型
joblib.dump(LR, dirs+'/LR.pkl'
读取模型
# 读取模型
LR = joblib.load(dirs+'/LR.pkl')
test = np.array([[3,4,5],[8,7,6]])
print('预测结果:\n', LR.predict(test)