pandas:选择一行数据框而不是系列

时间:2016-04-29 17:31:16

标签: python pandas

假设我有一群带有许多不同数据类型的pandas DataFrame,我想选择一行。

import numpy as np
import pandas as pd

df2 = pd.DataFrame({ 'A' : 1.,
                     'B' : pd.Timestamp('20130102'),
                     'C' : pd.Series(1,index=list(range(4)),dtype='float32'),
                     'D' : np.array([3] * 4,dtype='int32'),
                     'E' : pd.Categorical(["test","train","test","train"]),
                     'F' : 'foo' })

row = df2.loc[0]  

rowSeries个对象。由于Series仅包含一种类型的数据,因此dtype是最常见的数据object

>>> row 
A                      1
B    2013-01-02 00:00:00
C                      1
D                      3
E                   test
F                    foo
Name: 0, dtype: object

我可以将此Series转换为一行DataFrame,但因为Seriesdtype == object,转换后的DataFrame中的每一行也是>>> row_as_df = row.to_frame().T >>> row_as_df.dtypes A object B object C object D object E object F object dtype: object

dtypes

我想要的是它与df2具有相同的>>> df2.dtypes A float64 B datetime64[ns] C float32 D int32 E category F object dtype: object

errors.add(:end_time, "is before Start time") unless start_time.nil? || end_time.nil? || start_time < end_time

有没有办法从数据框中选择行并让它给我一个单行数据框,包含所有原始数据类型,而不是一个系列?

0 个答案:

没有答案