Pandas连接删除原始索引

时间:2018-02-20 07:10:26

标签: python pandas

我正在尝试使用以下代码连接两个数据帧。 df1是df2中索引值的每日更新,这是一个持续的月度数据集。 df3是保存的结果。

我遇到的问题是,当索引值不在df1中时(该特定日期没有值),它将完全从df3中删除。换句话说,如果索引值不在df2中,那么它根本不会出现在df3中。

如何保留df3的原始索引,以便如果索引值不在df1中,它不会删除它?我也无法输入0值,因为它与数据相关是空的。

import os
import pandas as pd
import glob

def Monthly_aggregation_merge(month, date):

    # file to be merged
    df1 = pd.read_csv(r'Data\{}\{}\Aggregated\Aggregated_Daily_All.csv'.format(month,date), usecols=['CU', 'Parameters', 'Total/Max/Min'], index_col =[0,1])
    df1 = df1.rename(columns = {'Total/Max/Min':date}) # Change column name

    # original file that data should be merged with
    df2 = pd.read_csv(r'Data\{}\MonthlyData\July2017NEW.csv'.format(month), index_col = [0,1])
    df3  = pd.concat([df2, df1], axis=1).reindex(df1.index)

    df3.to_csv(r'Data\{}\MonthlyData\July2017NEW.csv'.format(month))
    print 'Monthly Merge Done!'

0 个答案:

没有答案