这是我的代码
import pandas as pd df = pd.DataFrame({'Test': [861166021755746, 861166021755746, 861166021755746]}) df_2 = pd.DataFrame(df['Test'].describe(), columns = ['Test2']) print(df.describe()) print(df_2.describe())
这是输出
Test count 3.000000e+00 mean 8.611660e+14 std 0.000000e+00 min 8.611660e+14 25% 8.611660e+14 50% 8.611660e+14 75% 8.611660e+14 max 8.611660e+14 Test2 count 0 unique 0
我不明白为什么输出df
和df_2
问题在于您的创作方式df_2
。当你说columns=['Test2']
,你是丢弃来自所有列df['Test'].describe()
这是没有命名Test2
。但是没有名为的列Test2
。因此,您丢弃所有列,从而导致一个空的数据框。
要执行您想要的操作,请提供一个字典,其关键字是新的列名,Test2
其值是df['Test'].describe()
:
df = pd.DataFrame({'Test': [861166021755746, 861166021755746, 861166021755746]}) df_2 = pd.DataFrame({'Test2': df['Test'].describe()})
以便:
>>> print(df.describe()) Test count 3.000000e+00 mean 8.611660e+14 std 0.000000e+00 min 8.611660e+14 25% 8.611660e+14 50% 8.611660e+14 75% 8.611660e+14 max 8.611660e+14 >>> print(df_2) Test2 count 3.000000e+00 mean 8.611660e+14 std 0.000000e+00 min 8.611660e+14 25% 8.611660e+14 50% 8.611660e+14 75% 8.611660e+14 max 8.611660e+14