美文网首页
DataFrame常见数据处理方式

DataFrame常见数据处理方式

作者: xiaoguo16 | 来源:发表于2017-11-22 15:36 被阅读0次

    把数据变为DataFrame格式

    data={"one":[1,2,3],"two":[1,2,3]}
    df=pd.DataFrame(data)
    

    获取某一列的数据

    df=pd.read_csv('output.csv')
    #获取“firstSeenSrcIp”列,srcIp为Series数据结构
    srcIp=df[u'firstSeenSrcIp']
    

    获取某一行的数据

    a=df.ix["name"][0]
    #获取name行的第一个数据
    

    DataFrame中某一列中不同元素计数

    #startTime为列名
     timeCounts=df[u'startTime'].value_counts()
    

    对dataframe遍历

    本例子将Series格式的timeCounts先转换为dataframe结构在进行遍历。

     timeCounts=pd.DataFrame(timeCounts)       
     result={}
     for index, row in timeCounts.iterrows():  
         result[index]=row.values[0]
    

    python将csv文件转为dataframe格式

    df=pd.read_csv('test.csv')
    

    根据dataframe中的某一列的值进行过滤

    根据正则过滤

     data=df[df['parsedDate'].str.contains(r'^(2013-04-06 11:){1}(09|10|11|12|13|14|15|16|17|18|19|20):([0-9])+')] 
    

    根据列的数据值进行过滤

    data=df[df['TimeSeconds']<10]
    #TimeSeconds为整型
    

    把dataframe导入到csv文件中

    with open('outputTest.txt', 'w') as fout:
       df=pd.read_csv('test.csv')
       df.to_csv(fout, encoding='utf-8', index=False)
    

    dataframe排序:根据某一列的值

    #TimeSeconds为列ming
     data=data.sort(['TimeSeconds'],ascending=True)
    

    排序:根据索引值

    df.sort_index(inplace=True)
    #inplace如果手动设定为 True,那么原数组就可以被替换。
    

    更改某一列值的数据类型

    #将该列数据变为字符串
    df[u'firstSeenSrcPort'].astype('string')
    

    重新建立索引

    #删除原来的索引,重新建立由0开始的索引
    obj4 = obj3.reset_index(drop=True)  
    

    不同的dataframe的数据合并

    #先形成list结构
    frames = [df1, df2, df3]
    #利用concat函数
    result = pd.concat(frames)
    

    相关文章

      网友评论

          本文标题:DataFrame常见数据处理方式

          本文链接:https://www.haomeiwen.com/subject/pmtovxtx.html