簡體   English   中英

排序和排序列Python

[英]Sort and Order columns Python

我有一個代碼,可以使用另一個CSV文件中的信息來創建CSV。 在我的新CSV文件中,我只想保存20行,從行的最高到最低排序row ['impressions']

我讀了一些關於熊貓的東西,但是卻找不到任何關於熊貓的知識!

更清楚地說,我分享了一些圖片:

之前: 在此處輸入圖片描述

之后: 在此處輸入圖片描述

碼:

import csv
input_file = 'report_2017_12_11_12_31_19UTC.csv'
output_file= "All_Data_Tags.csv"

with open(input_file) as csvfile, open(output_file,  "w") as output:
    reader = csv.DictReader(csvfile)
    cols = ("domain","ddomain","opportunities", "impressions", "fillRate", "DATA")
    writer = csv.DictWriter(output, fieldnames=cols, extrasaction='ignore')

    writer.writeheader()
    for row in reader:
        row['fillRate'] = '{:.2f}'.format(float(row['fillRate']) * 100)
        if row['ddomain']  == "":
            if row['domain']  == "":
                row['ddomain'] = "App"
                row['domain'] = " "
        if row['domain'] == row['ddomain']:
            row['domain'] = "Real Site"    
        if row['domain']  == "":
            row['domain'] = "Detected Only"
        if row['ddomain']  == "":
            row['ddomain'] = "Vast Media"
        if row['ddomain'] != row['domain']:
            if row['ddomain'] != "Vast Media":
                if row['domain'] != "Real Site":
                    if row['domain'] != "Detected Only":
                        if row['ddomain'] != "App":
                            row['DATA'] = "FAKE"
                        else:
                            row['DATA'] = "OK"
                    else:
                        row['DATA'] = "OK"
                else:
                    row['DATA'] = "OK"
            else:
                row['DATA'] = "OK"

        writer.writerow(row)

這是答案:

碼:

import pandas as pd 


movies = pd.read_csv('Top20_Media_Yesterday.csv')

movies = movies.sort_values(['impressions'], ascending=False)

movies = movies.to_csv("Top20_Media_Yesterday.csv")

movies = pd.read_csv('Top20_Media_Yesterday.csv', nrows=21)

movies = movies.to_csv("Top20_Media_Yesterday.csv")

使用pandas框架的DataFrame.sort_values函數,將要排序的列名傳遞給by參數,並將axis設置為1。

您可以在此處找到類似的示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM