你好,所以我有兩列我正在使用describe(),我正在獲取他們的統計資料。我有這樣的東西
x=pd.Series([1,3,4,6,7])
y=pd.Series([75,324,234,42])
desk1=x.describe()
desk2=y.describe()
我想列印每個類別的以下內容。我正在這樣做desk1:desk2
print("desk1 stats",end="\t\t")
print("desk1 stats")
print(desk1,end="\t\t")
print(desk2)
我明白了:
desk1 stats desk1 stats
count 5.000000
mean 4.200000
std 2.387467
min 1.000000
25% 3.000000
50% 4.000000
75% 6.000000
max 7.000000
dtype: float64 count 4.000000
mean 168.750000
std 133.185022
min 42.000000
25% 66.750000
50% 154.500000
75% 256.500000
max 324.000000
dtype: float64
我想要的輸出是這樣的:
desk1 stats desk1 stats
count 5.000000 count 4.000000
mean 4.200000 mean 168.750000
std 2.387467 std 133.185022
min 1.000000 min 42.000000
25% 3.000000 25% 66.750000
50% 4.000000 50% 154.500000
75% 6.000000 75% 256.500000
max 7.000000 max 324.000000
dtype: float64 dtype: float64
我不想創建資料框。任何解決方案?提前致謝
uj5u.com熱心網友回復:
如何使用:
print(pd.concat([desk1, desk2],
keys=['desk1 description', 'desk2 description'],
axis=1))
輸出:
desk1 description desk2 description
count 5.000000 4.000000
mean 4.200000 168.750000
std 2.387467 133.185022
min 1.000000 42.000000
25% 3.000000 66.750000
50% 4.000000 154.500000
75% 6.000000 256.500000
max 7.000000 324.000000
對于更純粹的 python 解決方案:
desks = [desk1, desk2]
print('\n'.join(map(' '.join, zip(*(d.to_string().split('\n')
for d in desks)))))
輸出:
count 5.000000 count 4.000000
mean 4.200000 mean 168.750000
std 2.387467 std 133.185022
min 1.000000 min 42.000000
25% 3.000000 25% 66.750000
50% 4.000000 50% 154.500000
75% 6.000000 75% 256.500000
max 7.000000 max 324.000000
第二種溶液的中間體:
[d.to_string().split('\n') for d in desks]
[['count 5.000000', 'mean 4.200000', 'std 2.387467', 'min 1.000000', '25% 3.000000', '50% 4.000000', '75% 6.000000', 'max 7.000000'],
['count 4.000000', 'mean 168.750000', 'std 133.185022', 'min 42.000000', '25% 66.750000', '50% 154.500000', '75% 256.500000', 'max 324.000000']]
list(zip(*(d.to_string().split('\n') for d in desks)))
[('count 5.000000', 'count 4.000000'),
('mean 4.200000', 'mean 168.750000'),
('std 2.387467', 'std 133.185022'),
('min 1.000000', 'min 42.000000'),
('25% 3.000000', '25% 66.750000'),
('50% 4.000000', '50% 154.500000'),
('75% 6.000000', '75% 256.500000'),
('max 7.000000', 'max 324.000000')]
list(map(' '.join, zip(*(d.to_string().split('\n') for d in desks))))
['count 5.000000 count 4.000000',
'mean 4.200000 mean 168.750000',
'std 2.387467 std 133.185022',
'min 1.000000 min 42.000000',
'25% 3.000000 25% 66.750000',
'50% 4.000000 50% 154.500000',
'75% 6.000000 75% 256.500000',
'max 7.000000 max 324.000000']
uj5u.com熱心網友回復:
請嘗試以下代碼:
desk1=pd.DataFrame(desk1)
desk_mid=pd.DataFrame(desk1.index)
desk_mid.index=desk1.index
desk2=pd.DataFrame(desk2)
df=pd.concat([desk1, desk_mid, desk2], axis=1)
df.columns=["desk1 description", " desk2 description", ""]
df
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/527143.html
標籤:Python熊猫麻木的
上一篇:如何計算熊貓中不常見的缺失值
下一篇:如何在def函式中參考單列
