Python 熊猫做一个“大熊猫”;“真的”;海螺

Python 熊猫做一个“大熊猫”;“真的”;海螺,python,pandas,Python,Pandas,在我看来,当我做concat时,pandas返回的数据帧是两个系列,而不是一个系列。那给我带来了一些麻烦 df1 = pandas.DataFrame(np.random.randn(4, 1), columns=['A']) df2 = pandas.DataFrame(np.random.randn(4, 1), columns=['A']) df3 = pandas.concat( [df1, df2] ) print df3 #Trying to isolate the row wit

在我看来,当我做concat时,pandas返回的数据帧是两个系列,而不是一个系列。那给我带来了一些麻烦

df1 = pandas.DataFrame(np.random.randn(4, 1), columns=['A'])
df2 = pandas.DataFrame(np.random.randn(4, 1), columns=['A'])

df3 = pandas.concat( [df1, df2] )
print df3
#Trying to isolate the row with the lowest value
print df3.ix[df3['A'].argmin()]
给我这个输出

          A
0 -1.368203
1  0.340653
2 -0.431968
3 -0.354293
0  0.391797
1 -0.263332
2 -1.450046
3  0.162143    
[8 rows x 1 columns]

          A
2 -0.431968
2 -1.450046    
[2 rows x 1 columns]
正如您所看到的,问题在于它不会创建新的索引,因此我不会得到一行,而是两行


如何“正确”地执行此操作?

您是否在寻找
忽略\u index=True

In [8]:

df3 = pandas.concat( [df1, df2] , ignore_index=True)
print df3
#Trying to isolate the row with the lowest value
print df3.ix[df3['A'].argmin()]


          A
0 -0.218089
1 -0.638552
2  0.955099
3  0.508360
4 -0.000249
5  0.125377
6  0.969202
7 -1.112411

[8 rows x 1 columns]
A   -1.112411
Name: 7, dtype: float64

你到底在干什么?是
df1。首先组合(df2)
您想要什么?Pandas在这里做了一个真正的
concat
,它连接了
df1
df2
,没有删除任何行……我认为你混淆了“两个系列”――而且没有;这是一个带有一列的数据帧——默认情况下,串联保留索引。