为什么合并数据帧会注销我的一些数据?
Why does merging dataframes writes off some of my data?
我试图合并两个数据帧:
df1 contains columns a b c, row 1,2,3
df2 contains columns a b c, row 4,5,6
使用 pd.merge(df1,df2)
时,一些行数据被删除并从合并的 df 中消失。为什么?
你可以试试这个:
pd.concat([df1,df2])
有效。
示例:
df1 = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]),
columns=['a', 'b', 'c'])
df2 = pd.DataFrame(np.array([[11, 22, 33], [44, 55, 66], [77, 88, 99]]),
columns=['a', 'b', 'c'])
pd.concat([df1,df2],ignore_index=True)
您将获得包含来自两个数据帧的所有元素的 table。 ignore_index=True
有助于避免混淆索引编号。
您还可以使用:
df1.merge(df2, how='outer')
你应该检查 https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.merge.html
我试图合并两个数据帧:
df1 contains columns a b c, row 1,2,3
df2 contains columns a b c, row 4,5,6
使用 pd.merge(df1,df2)
时,一些行数据被删除并从合并的 df 中消失。为什么?
你可以试试这个:
pd.concat([df1,df2])
有效。
示例:
df1 = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]),
columns=['a', 'b', 'c'])
df2 = pd.DataFrame(np.array([[11, 22, 33], [44, 55, 66], [77, 88, 99]]),
columns=['a', 'b', 'c'])
pd.concat([df1,df2],ignore_index=True)
您将获得包含来自两个数据帧的所有元素的 table。 ignore_index=True
有助于避免混淆索引编号。
您还可以使用:
df1.merge(df2, how='outer')
你应该检查 https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.merge.html