精华内容
下载资源
问答
  • import pandas as pd import os import matplotlib.pyplot as plt import matplotlib #设置matplotlib字体,直接复制即可 font = {‘family’: ‘宋体’, ‘weight’: ‘bold’, ‘size’: ‘larger’} matplotlib....

    import pandas as pd
    import os
    import matplotlib.pyplot as plt
    import matplotlib
    #设置matplotlib字体,直接复制即可
    font = {‘family’: ‘宋体’,
    ‘weight’: ‘bold’,
    ‘size’: ‘larger’}
    matplotlib.rc(‘font’,family=‘Microsoft YaHei’,weight=‘bold’)
    #设置打开文件地址
    os.chdir(r’C:\文件路径)
    #打开文件
    df = pd.read_excel(‘2017-2020.xlsx’)
    #新增序号列
    df[‘序号’] = range(1,len(df)+1)
    #将序号列排到第一列
    df = df[[‘序号’,‘名字’,‘2020’,‘2019’,‘2018’,‘2017’]]
    print(df)

    展开全文
  • pandas根据列名对列重新排序

    万次阅读 2019-08-01 17:23:11
    之前自己排序的方式。。。。 今天发现一个函数就能搞定: In [1]: frame=pd.DataFrame(np.arange(12).reshape((4,3)),columns=['c','a','b'],index=['D','B','C','A']) c a b D 0 1 2 B 3 4 5 C 6 7 8 A 9 10 ...

    之前自己排序的方式。。。。

    今天发现一个函数就能搞定:

    In [1]: frame=pd.DataFrame(np.arange(12).reshape((4,3)),columns=['c','a','b'],index=['D','B','C','A'])
    
       c   a   b
    D  0   1   2
    B  3   4   5
    C  6   7   8
    A  9  10  11
    
    In [2]: frame.sort_index(axis=0)
    Out[2]:
       c   a   b
    A  9  10  11
    B  3   4   5
    C  6   7   8
    D  0   1   2
    
    In [3]: frame.sort_index(axis=1)
    Out[3]:
        a   b  c
    D   1   2  0
    B   4   5  3
    C   7   8  6
    A  10  11  9
    

     

    展开全文
  • pandas列排序

    千次阅读 2018-12-10 15:13:00
    import pandas as pd df = pd.DataFrame({'AAA' : [1,2,1,3], 'BBB' : [1,1,2,2], 'CCC' : [2,1,3,1]}) source_cols = df.columns new_cols = [str(x) + "_cat" for x in source_cols] categories = {1 : 'Alp.....
    import pandas as pd
    df = pd.DataFrame({'AAA' : [1,2,1,3], 'BBB' : [1,1,2,2], 'CCC' : [2,1,3,1]})
    source_cols = df.columns
    new_cols = [str(x) + "_cat" for x in source_cols]
    categories = {1 : 'Alpha', 2 : 'Beta', 3 : 'Charlie' }
    df[new_cols] = df[source_cols].applymap(categories.get)
    df.sort_values(['AAA_cat','BBB_cat'],ascending=[0,1],inplace=True)
    

      

     

    转载于:https://www.cnblogs.com/mahailuo/p/10096646.html

    展开全文
  • pandas 拆分多

    2020-07-31 15:38:36
    把选择的行列转换为列表,排序方式也可以同样的操作) pandas 导出压缩文件 tempData.to_csv(exportFile, encoding='utf_8_sig', sep=',', index=False, header=True,compression='gzip') encoding='utf_8_sig' 导出...

    现有数据为这

    1,2,11,"MiWiFi-R4AC|百兆双频|小米|R4AC|小米,FW325R|百兆单频|迅捷|FW325R|迅捷,device_12|百兆单频|MERCURY|device_12|MERCURY,FIR302C|百兆单频|斐讯|FIR302C|斐讯,TL-WR886N|百兆单频|TPLINK|TL-WR886N|TPLINK,TL-WR890N|百兆单频|TPLINK|TL-WR890N|TPLINK,MW310R|百兆双频|水星|MW310R|水星,TL-WDR5620|百兆双频|TP-LINK|TL-WDR5620|TP-LINK,MW313R|百兆双频|水星|MW313R|水星,TL-WR842N|百兆单频|TPLINK|TL-WR842N|TPLINK,MiWiFi-R4CM|百兆单频|小米|小米4C|小米,MW325R|百兆单频|水星|MW325R|水星,MW155R|百兆双频|水星|MW155R|水星,MW150R|百兆双频|水星|MW150R|水星"
     

    需要将后半部分,全部拆分成列。首先读取文件,由于文件比较大。

    tempData=pd.read_csv(filName,low_memory=False,compression='gzip')

    读取压缩文件,至于为什么加low_memory=False  后面了再说。

    先确定文件列名称:

    读取完之后 至于分多少列 文件中第三个字段是有多少组数据,

    那么  截取三个字段的值

    maxColumns=tenpData.iloc[0,2]

    按照文件具体名称生成文件列名称

    strChar=u"路由器"
    strSourceColumn=u"名称,类型,品牌,型号,厂家"
    coloumnlist=strSourceColumn.split(",");
    for i in range(int(maxColumns)):
    	for indexColumn in coloumnlist:
    		strTemp=strChar+str(i+1)+indexColumn+","
    		strColumn+=strTemp
    
    strColumn=strColumn[:-1]
    
    new_names = strColumn.split(",");

    因为这部分是一个整体,每一组用逗号分割,每组之间用|分割因此

    tenpData['Info1']=tenpData['Info'].str.replace("|",",")
    newTenpData = tenpData['Info1'].str.split(',', expand=True)
    newTenpData.columns = new_names
    tenpData = newTenpData.join(newSubdevicesData)
    
    #删除多余的行
    tenpData.drop(['Info'],axis=1,inplace=True)
    tenpData.drop(['Info1'],axis=1,inplace=True)
    

    现在基本就处理完了

    常用一些操作

    
    筛选数据
    tempData=tempALLData.loc[(tempALLData["A"] == "3")]
    
    数据按照莫格字段排序
    tempData=tempData.sort_values(by='C',ascending=False)
    用到了sort_values函数,by参数可以指定根据哪一列数据进行排序,ascending是设置升序和降序(选择多列或者多行排序要加[ ],把选择的行列转换为列表,排序方式也可以同样的操作)
    
    
    pandas 导出压缩文件
    tempData.to_csv(exportFile,  encoding='utf_8_sig', sep=',',  index=False, header=True,compression='gzip')
    
    encoding='utf_8_sig'   导出的utf8 格式直接打开乱码,所以需要设置为 utf_8_sig这样  导出直接打开正常,主要是windows 下面直接打开。
    
    compression:字符串,可选的
    a字符串,表示要在输出文件中使用的压缩,允许的值为'gzip','bz2','xz',仅在第一个
    参数为文件名时使用

     

    在读取文件的时候会报错:

    sys:1: DtypeWarning: Columns (24) have mixed types. Specify dtype option on import or set low_memory=False.”

    pd = pd.read_csv(Your_path, low_memory=False)
    
    low_memory=False 添加此选项。
    low_memory : boolean, default True
    
    # 分块加载到内存,再低内存消耗中解析,但是可能出现类型混淆。
    # 确保类型不被混淆需要设置为False,或者使用dtype 参数指定类型。
    # 注意使用chunksize 或者iterator 参数分块读入会将整个文件读入到一个Dataframe,而忽略类型(只能在C解析器中有效)

     

     

     

     

     

     

    展开全文
  • 实际工作中我们可能遇到,挑选出表格中每一中的最大值最小值组成新的DataFrame,或者按照索引(日期)、某些的值进行重新排序,由于内容不多,我就合并在一起写下来给大家参考 对值进行自定义规则筛选 1...
  • pandas 对某一进行排序
  • pandas Dataframe按指定排序问题

    万次阅读 2018-07-30 14:38:15
    想查看按某排序后的情况,借鉴网上的解决办法: df.sort_values(by="sales" , ascending=False) by 指定 ascending 想显示结果的话,可以将结果赋给另一个变量 b=df.sort_values(by="sales" , ascending=...
  • import pandas as pd import os os.chdir(r'C:\Users\Hans\Desktop\data_analysis') df = pd.read_excel('pandas_multiindex.xls') df.head() 日期 收盘 开盘 高 低 交易量 涨跌幅 公司 ...
  • pandas dataframe中的进行重新排序pandas dataframe重排、倒排、正排、自定义排序详解及实践 实施数据构建: import pandas as pd import numpy as np data = {'产品':['肉类','盐铁','纺织','木材']*2,...
  • pandas按照多列排序-ascending

    千次阅读 2021-01-22 10:43:46
    import pandas as pd #读取文件 df = pd.read_csv('./TianQi.csv') #字符串替换和类型转换 df['最高温度'] = df['最高温度'].str.replace('℃','').astype('int32') df.loc[:,'最低温度'] = df['最低温度'].str....
  • pandas中对dataframe进行groupby+统计操作后会生成MultiIndex 如对df4的'prod_label_name2'进行聚合后,对'm_up_flow'进行describe操作 df55=df4.groupby(['prod_label_name2'])[['m_up_flow']].describe()....
  • bandpoi=inbandtick.groupby([‘label’])[‘POI属性’].apply(lambda x: ‘;’.join([m[0] for m in Counter(x).most_common(2)])) print(bandpoi)
  • Pandas按照某排序

    千次阅读 2019-08-06 18:47:06
    函数: pd.sort_values("feature_name",inplace=True) 表示pd按照"feature_name"这个字段排序; inplace:默认为False,如果该值为False,... ascending:默认为True,按照升序排序,为False时,按照降序排序。 ...
  • pandas实现中文排序

    千次阅读 2020-09-30 23:38:21
    在我们使用pandas过程中有时会遇到排序,尤其是中文排序,例如excel排序,按姓名拼音排序等等,而pandas默认的排序并不能满足我们的中文排序,所以有了这个中文排序方式 一、首先实现中文的拼音排序 def to_...
  • Pandas DataFrame按照的值排序

    千次阅读 2019-10-15 23:38:35
    参考Pandas的官方文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.sort_values.html 输入: col1 col2 col3 0 A 2 0 1 A 1 1 2 B 9 9 3 NaN ...
  • Pandas---按列排序

    2021-07-01 17:09:42
    Pandas—按列排序 按单列 df col1 col2 col3 col4 0 A 2 0 a 1 A 1 1 B 2 B 9 9 c 3 NaN 8 4 D 4 D 7 2 e 5 C 4 3 F df.sort_values(by=['col1'], ascending=True) # ascending = True 默认升序,
  • pandas 按照某一进行排序

    万次阅读 2018-10-29 17:38:00
    pandas排序的方法有很多,sort_values表示根据某一列排序 pd.sort_values("xxx",inplace=True) 表示pd按照xxx这个字段排序,inplace默认为False,如果该值为False,那么原来的pd顺序没变,只是返回的是...
  • 使用pandas之前要导入包: import numpy as np import pandas as pd import random #其中有用到random函数,所以导入 一、dataframe创建 pandas.DataFrame(data=None,index=None,columns=None,dtype=None,copy=...
  • pandas中DataFrame依据的值大小排序

    千次阅读 2019-12-12 15:55:34
    pandas中,依据值大小对这个数据帧重新排序

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,259
精华内容 9,703
关键字:

pandas列重新排序