• 宋朝官员分析随堂理解笔记


    #读入数据

    politic_relation=pd.read_csv('officer',encoding='utf-8')

    -------------------------------

    encoding='utf-8'

    #解决中文解读问题

    ----------------------------

    shape #查看数据整体情况(记录和字段及行跟列数)

    columns#检查列数及字段全部提取出来

    value_counts()#根据值计数

    sort_values()#根据值排序

    duplicated().sum()检查整行重复

    dupicated('姓名‘).sum()#检查部分字段的行重复

    drop()#删除整列

    dropna()删除有缺失值的行

    drop_duplicates(inplace=True)#在原数据集中删除重复行

    drop_duplicates('学号',inplace=True)#在源数据集中删除部分字段重复的行

    --------------------------------------------------------------------------------------------------------

    kinship['姓名’].nunique()#在姓名列中取值,重复值不取。nunique唯一值的函数表述

    kinship['亲戚‘].groupby(kinship['姓名’]).count().sort_values(ascending=False)#在亲戚表中根据姓名分组亲戚,然后计数(亲戚的数)并按照从大到小的排序。groupby是分组函数,count()计数函数,sort_values根据值排序values可以更换成其他的值。ascending=False为按照从到小的约束值)

    ----------------------------------------------------------------------------------------------------------------

    from matlotplib.pyplot import  mpl 

    mpl.rcParams['font.sans-serif']=['Simhei']

    #解决中文显示不正常

    --------------------------------------------------

    plot(kind='bar')绘制柱状图的一种表示,title  xlabel,ylabel(标题,x,y)

    ----------------------------------------------------------

    x=np.arange(1,139,1)#解决横坐标不是特别重要,显示不清楚的划分情况。

    y=kinship

    plt.bar(x,y)

    plt.title

    plt.xlabel

    plt.ylabel

    绘制柱状图的另外一种表述

     ---------------------------------------------

    绘制韦恩图

    from matplotlib_venn  import   venn3

    venn3([officer,associate,kin],(‘官员’,‘关系人’,‘亲戚’))

    plt.show()

    ------------------------------

    使用&符号求各个集合的交集

    -----------------------------------------------------

    idxmax()这一列的最大值

    isnull().sum()空值数量

    ------------------------

    politic_relation[politic_relation['Assoc.Index year']==0]['Assoc.Index  year].count()

    #求Assoc . Index  year 这一列数值为0的数量

    在地理分布图中使用

    first()取第一个非空值

    绘制地理分布图

    ------------------------------------------------------------------------------------------------------------

    #pyecharts中官方绘制地理分布图的代码:

    from pyecharts import Geo

    geo =Geo(

    '官员籍贯的地理分布图‘,

    title_color="#fff",

    title_pos="center",

    width = 750,#宽

    height = 600,#高

    background_color = "404a59",

    )

    #插入自定义经纬度的字典

    address = {data.index[i]:[data,i loc[i]['X'],data.i loc[i]['Y']] for i in range (len(data))}

    #attr取值为data的索引值,value 取值为data的官员数量

    attr = data.index

    value = data['官员数量’]

    #添加用户自定义经纬仪的参数geo_cites_coords,取值为address

    geo.add(

     "",

    attr,

    value,

    visual_range=[0,5],

    visual_text_color='#fff",

    symbol_size = 7,

    is_visualmap=True,

    geo_cities_coords=address

    )

    geo

    -----------------------------------------------------------------------------------

    politic_relation[['姓名‘,’社会关系人姓名‘]].groupby(politic_relation['联系’].nunique()

    #同时在一个表中提取多个字段时 要使用方括弧括起来。

    ------------------------------------------------------------------------

    整合多字段为同一类时 使用“or"关键字

    politic_relation['支持性关系] = politic_relation['联系==”支持“ or 联系==”得到Y的支持“ or 联系==”政见趋同“']

    ----------------------------------------------------------

    使用abs求绝对值

    politic_relation['指数年之差‘]=abs(politic_relation['Index year'] - politic_relation['Assoc.Index year])

    ----------------------------------------------------------------

    unstack()

    #改变行

      

  • 相关阅读:
    Linux下安装漏洞扫描工具Nessus
    【译】使用OpenVAS 9进行漏洞扫描
    MD5小彩虹表
    获取某个版本软件存在的漏洞信息
    【译】使用chage来管理Linux密码过期时间的七个例子
    [转]Centos 安装Sublime text 3
    Nessus扫描策略
    Nginx使用笔记
    SSH 公钥登录
    MySQL加密
  • 原文地址:https://www.cnblogs.com/weilairenlai/p/11719029.html
Copyright © 2020-2023  润新知