python数据分析常见问题整理

问题一:python是下载32位还是64位?

个人建议是64位,原因是有些包并不支持32位的python,比如搞模型的同学会用到的lightgbm,就没有32位的包发布,所以建议直接一步到位,下载64位的python安装包

问题二:如何解决python导入导出中文文件的问题?

首先建议在脚本的第一行写下如下内容:

#-*- coding: utf-8 -*-  

上面的脚本是用来设置字符编码,采用utf-8编码支持中文
但是会有即便输出了这一行脚本,仍然是乱码的问题,下面的解决方法,亲测有效

import pandas as pd
from_path = 'XXX'
data = pd.read_csv(from_path,engine ='python')
to_path = 'XXX'
data.to_csv(to_path,encoding = 'utf_8_sig')

问题三:有哪些一行代码就能搞定的数据清洗问题?

数据清洗参考了Medium上以数据挖掘大牛Kim Lim Lee的总结

  1. 检查缺失数据
def check_missing_data(df):
    return df.isnull().sum.sort_values(ascending = False)
  1. 删除没用的列
def drop_multiple_col(col_name_list,df):
    df.drop(col_name_list,axis=1,inplace = True)

inplace的设置是用删除后的结果替换原来的数据集

  1. 转换数据类型
    当数据集变大时,需要转换数据类型来节省内存
def change_dtypes(col_int,col_float,df):
    df[col_int]=df[col_int].astype('int32')
    df[col_float]=df[col_float].astype('float32')
  1. 将分类变量转化为数值变量
def convert_cat2num(df):
    num_encode={'col1':{'YES':1,'NO':0},
                            'col2':{'male':0,'female':1}}                            
  1. 转换时间戳
import pandas as pd
def convert_str_datetime(df):
    df.insert(loc=2,column='timestamp',value=pd.to_datetime(df.transdate,format='%Y-%m-%d %H:%M:%S.%f'))

问题四:如何解决seaborn热力图中文显示乱码?

plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文字体设置-黑体
plt.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题
sns.set(font='SimHei')  # 解决Seaborn中文显示问题

如果您觉得有帮助的话,可以给新人点个赞哈~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容