熊猫Python:如何在熊猫中写换行?

时间:2018-11-01 08:55:46

标签: python json pandas

我正在尝试使用JSONAPI's GET requests的{​​{1}}输出列表保存到CSV文件中,但是下面的代码仅生成一个条目,而不会创建新行。

示例JSON输出

Pandas

ID : 27980
Title : ELSVIOS 6 Colors Boho Split Long <font><b>Dress</b></font> Fashion Women O-Neck Maxi <font><b>Dress</b></font> Summer Short Sleeve Solid <font><b>Dress</b></font> With Belt Vestidos XS-3XL32815751265US
Price : $10.32US 
Sale Price :$10.32

2 个答案:

答案 0 :(得分:0)

正如kosist所说,您正在覆盖CSV文件。

创建另一个DataFrame,您将在其中添加在循环中导入的数据。

import pandas as pd
cols = ['product_title', 'product_id', 'original_price', 'sale_price']
df = pd.DataFrame(columns=cols)

for resultsget in getlistproductsx:
    producturls = resultsget['productTitle']
    productids = resultsget['productId']
    originalprices = resultsget['originalPrice']
    saleprices = resultsget['salePrice']

    print(producturls + str(productids) + originalprices + saleprices)
    raw_data = {'product_title': [producturls],
                'product_id': [productids],
                'original_price': [originalprices],
                'sale_price': [saleprices]}

    # create second DataFrame to which the data is added
    df2 = pd.DataFrame(raw_data, columns=cols)
    # append the newly created DataFrame to the one keeping the data
    df  = df.append(df2)

# then write the DataFrame to csv
df.to_csv('csv.csv')

答案 1 :(得分:0)

您可能希望将所有行加载到大熊猫DataFrame中,然后再执行to_csv,就像这样:

import pandas as pd
df = pd.DataFrame(getlistproductsx)
df.to_csv('csv.csv')