0
'日付'列にパンダを使用して2つのデータフレームを結合しようとしています。私は通常df2 = pd.concat([df、df1]、axis = 1)を使用しますが、なんらかの理由でこれは機能しません。2つの異なるデータフレームを連結/結合/結合するパンダ
この例では、SQLファイルからデータを取り出し、年月列をマージしてピボットする 'Date'という新しい列を作成しています。 Whneは2つのデータフレームを連結して連結し、データフレームは併合されずに並べて表示されます。
何が立ち上がっ:私は来てほしい何 日犬
の猫のカウント日数:犬
の猫カウントの
日カウント任意のアイデア? 私の他の問題は、Dateカラムがdatetime関数ではなく文字列として出力されるようにすることです。解決策を考えるときはこれを心に留めてください。私はあなたがコードを削除する必要があると思います
executeScriptsFromFile('cats.sql')
df = pd.DataFrame(cursor.fetchall())
df.columns = [rec[0] for rec in cursor.description]
monthend = {'Q1':'3/31','Q2':'6/30','Q3':'9/30','Q4':'12/31'}
df['Date']=df['QUARTER'].map(monthend)+'/'+ df['YEAR']
df['Date'] = pd.to_datetime(df['Date'])
df10= df.pivot_table(['Breed'], ['Date'], aggfunc=np.sum,fill_value=0)
df10.reset_index(drop=False, inplace=True)
df10.reindex_axis(['Breed', 'Count of Cats'], axis=1)
df10.columns = ('Breed', 'Count of Cats')
executeScriptsFromFile('dogs.sql')
df = pd.DataFrame(cursor.fetchall())
df.columns = [rec[0] for rec in cursor.description]
monthend = {'Q1':'3/31','Q2':'6/30','Q3':'9/30','Q4':'12/31'}
df['Date']=df['QUARTER'].map(monthend)+'/'+ df['YEAR']
df['Date'] = pd.to_datetime(df['Date'])
df11= df.pivot_table(['Breed'], ['Date'], aggfunc=np.sum,fill_value=0)
df11.reset_index(drop=False, inplace=True)
df11.reindex_axis(['Breed', 'Count of Dogs'], axis=1)
df11.columns = ('Breed', 'Count of Dogs')
df11a= df11.round(0)
df12= pd.concat([df10, df11a],axis=1)
あなたのデータフレームのいくつかのサンプルを追加することができます。
string
使用に変換インデックスのも? 'df10.index'と' d11.index'の型の違いもありますか?これはうまくいくはずです。 – jezrael
わかりませんが、 'df10.reset_index(drop = False、inplace = True)'と 'df11.reset_index(drop = False、inplace = True)'を削除する必要があるようです。 – jezrael
または、1つのレベルだけを削除する必要があります。両方のデータフレームで 'date 'を両方のデータフレームでインデックスとして使用する必要があります。 – jezrael