为什么我的数据在Task4中变为NaN?

时间:2018-01-31 01:53:41

标签: python pandas

为什么我的数据在任务4中变为NaN?我也尝试过使用.loc [],但这仍然无效。我需要能够使用这些数字。

dec6 = pd.read_csv('coinmarketcap_06122017.csv', header=0)
market_cap_raw = dec6[['id', 'market_cap_usd']]
print(market_cap_raw.describe())
#print(market_cap_raw)
market_cap_raw.count()

#Task 3
cap = market_cap_raw.query('market_cap_usd > 0')
cap.count()
print(cap.describe())

#Task 4
cap10 = cap.head(10).reindex(index=cap['id'])
print(cap10.describe())

结果:

       market_cap_usd
count    1.144000e+03
mean     4.861599e+08
std      6.713982e+09
min      1.200000e+01
25%      7.513858e+05
50%      6.856627e+06
75%      4.043108e+07
max      1.862130e+11
       market_cap_usd
count    1.144000e+03
mean     4.861599e+08
std      6.713982e+09
min      1.200000e+01
25%      7.513858e+05
50%      6.856627e+06
75%      4.043108e+07
max      1.862130e+11
       market_cap_usd
count             0.0
mean              NaN
std               NaN
min               NaN
25%               NaN
50%               NaN
75%               NaN
max               NaN

最后一次打印导致NaN。

2 个答案:

答案 0 :(得分:0)

re_index()方法导致数据更改为NaN。

答案 1 :(得分:-1)

head(...)之后使用reindex(...)

cap10 = cap.head(10).reindex(index=cap['id'])表示您提取前10行,然后再应用索引的全长。将它们更改为cap10 = cap.reindex(index=cap['id']).head(10)