2017-09-22 7 views
1

私は、以下に述べる列を持つ2つのデータフレームを持っています。私が最初のものに2番目のものを追加しようとすると、私はValueErrorを得ています:平面の形状が誤差を揃えていません。Pandas dataframe.appendにエラーがあります:平面図形が整列していません

DF1列:

Index([     u'asin',  u'view_publish_data', 

       u'data_viewer',  u'relationship_viewer', 
      u'parent_task_id',   u'submission_id', 
        u'source',   u'creation_date', 
       u'created_by',    u'vendor_code', 
         u'week',    u'processor', 
       u'brand_name',   u'brand_name_new', 
       u'bullet_point',    u'cost_price', 
      u'country_of_origin',     u'cpu_type', 
       u'cpu_type_new',    u'item_name', 
      u'item_type_keyword',    u'list_price', 
    u'minimum_order_quantity',     u'model', 
      u'product_category', u'product_site_launch_date', 
     u'product_subcategory',   u'product_tier_id', 
    u'replenishment_category',  u'product_description', 
       u'style_name',      u'vc', 
       u'vendor_code',  u'warranty_description'], 
    dtype='object') 

DF2列:

Index([       u'asin',    u'view_publish_data', 

        u'data_viewer',   u'relationship_viewer', 
        u'parent_task_id',     u'submission_id', 
          u'source',     u'creation_date', 
         u'created_by',     u'vendor_code', 
          u'week',     u'brand_name', 
       u'bullet_features',     u'color_name', 
          u'itk',      u'item_name', 
         u'list_price',      u'new_brand', 
       u'product_catagory',   u'product_sub_catagory', 
       u'product_tier_id',  u'replenishment_category', 
         u'size_name',     u'cost_price', 
       u'item_type_keyword',      u'our_price', 
      u'is_shipped_from_vendor',  u'manufacturer_vendor_code', 
      u'product_description',     u'vendor_code'], 
    dtype='object') 
+0

どのように追加しますか? – jezrael

+0

これらは、異なる列の2つの異なるデータフレームです。どのようにこれらを追加しますか? – Yorian

+0

カラム名に基づいて追加したいと思います。列名が両方のデータフレームに存在する場合、最終データフレームには両方の列が含まれます。列がそれらのいずれかに存在しない場合、最終的なデータフレームのその列は、それを持たない列のNANを持つ必要があります。 –

答えて

1

あなたはどのようなリターン整列DataFrame Sのタプルalignconcatを使用することができます。

cols1 = pd.Index([ u'asin', u'view_publish_data', 

       u'data_viewer',  u'relationship_viewer', 
      u'parent_task_id',   u'submission_id', 
        u'source',   u'creation_date', 
       u'created_by',    u'vendor_code', 
         u'week',    u'processor', 
       u'brand_name',   u'brand_name_new', 
       u'bullet_point',    u'cost_price', 
      u'country_of_origin',     u'cpu_type', 
       u'cpu_type_new',    u'item_name', 
      u'item_type_keyword',    u'list_price', 
    u'minimum_order_quantity',     u'model', 
      u'product_category', u'product_site_launch_date', 
     u'product_subcategory',   u'product_tier_id', 
    u'replenishment_category',  u'product_description', 
       u'style_name',      u'vc', 
       u'vendor_code',  u'warranty_description']) 

cols2 = pd.Index([ u'asin', u'view_publish_data', 

        u'data_viewer',   u'relationship_viewer', 
        u'parent_task_id',     u'submission_id', 
          u'source',     u'creation_date', 
         u'created_by',     u'vendor_code', 
          u'week',     u'brand_name', 
       u'bullet_features',     u'color_name', 
          u'itk',      u'item_name', 
         u'list_price',      u'new_brand', 
       u'product_catagory',   u'product_sub_catagory', 
       u'product_tier_id',  u'replenishment_category', 
         u'size_name',     u'cost_price', 
       u'item_type_keyword',      u'our_price', 
      u'is_shipped_from_vendor',  u'manufacturer_vendor_code', 
      u'product_description',     u'vendor_code']) 

df1 = pd.DataFrame([range(len(cols1))], columns=cols1) 
df2 = pd.DataFrame([range(len(cols2))], columns=cols2) 

df = pd.concat(list(df1.align(df2)), ignore_index=True) 
print (df) 

    asin brand_name brand_name_new bullet_features bullet_point \ 
0  0   12   13.0    NaN   14.0 
1  0   11    NaN    12.0   NaN 

    color_name cost_price country_of_origin cpu_type cpu_type_new ... \ 
0   NaN   15    16.0  17.0   18.0 ...  
1  13.0   23    NaN  NaN   NaN ...  

    style_name submission_id vc vendor_code vendor_code vendor_code \ 
0  30.0    5 31.0   9   9   32 
1   NaN    5 NaN   9   29   9 

    vendor_code view_publish_data warranty_description week 
0   32     1     33.0 10 
1   29     1     NaN 10 

[2 rows x 46 columns] 
関連する問題