我有一个数据帧,每次根据字符串值对数据帧进行排序后,我想提取第一个索引值。
我希望我的函数做的是将国家/地区名称拉到列表顶部。在此示例中,它将把“United States”拉为字符串。因为国家/地区名称是索引而不是系列值,所以我不能只执行 Summer_gold.iloc[0]。
<p></p>
<h1>Summer Gold Silver Bronze Total # Winter Gold.1 Silver.1 Bronze.1 Total.1 # Games Gold.2 Silver.2 Bronze.2 Combined total ID</h1>
<p>Afghanistan 13 0 0 2 2 0 0 0 0 0 13 0 0 2 2 AFG
Algeria 12 5 2 8 15 3 0 0 0 0 15 5 2 8 15 ALG
Argentina 23 18 24 28 70 18 0 0 0 0 41 18 24 28 70 ARG
Armenia 5 1 2 9 12 6 0 0 0 0 11 1 2 9 12 ARM
Australasia 2 3 4 5 12 0 0 0 0 0 2 3 4 5 12 ANZ </p>
<blockquote>
<p>So if I were to sort based on number of Gold medals I'd get a
dataframe that looks like:</p>
</blockquote>
<pre><code> # Summer Gold Silver Bronze Total # Winter Gold.1 \
</code></pre>
<p>United States 26 976 757 666 2399 22 96<br/>
Soviet Union 9 395 319 296 1010 9 78<br/>
Great Britain 27 236 272 272 780 22 10<br/>
France 27 202 223 246 671 22 31<br/>
China 9 201 146 126 473 10 12 </p>
<pre><code> Silver.1 Bronze.1 Total.1 # Games Gold.2 Silver.2 \
</code></pre>
<p>United States 102 84 282 48 1072 859<br/>
Soviet Union 57 59 194 18 473 376<br/>
Great Britain 4 12 26 49 246 276<br/>
France 31 47 109 49 233 254<br/>
China 22 19 53 19 213 168 </p>
<pre><code> Bronze.2 Combined total ID
</code></pre>
<p>United States 750 2681 USA<br/>
Soviet Union 355 1204 URS<br/>
Great Britain 284 806 GBR<br/>
France 293 780 FRA<br/>
China 145 526 CHN </p>
<blockquote>
<p>So far my overall code looks like:</p>
</blockquote>
def answer_one():
summer_gold = df.sort_values('Gold', ascending=False)
summer_gold = summer_gold.iloc[0]
return summer_gold
answer_one()
Output:
# Summer 26
Gold 976
Silver 757
Bronze 666
Total 2399
# Winter 22
Gold.1 96
Silver.1 102
Bronze.1 84
Total.1 282
# Games 48
Gold.2 1072
Silver.2 859
Bronze.2 750
Combined total 2681
ID USA
Name: United States, dtype: object
在本例中,我想要输出“美国”,或者是排序数据框顶部的任何国家/地区的名称。
最佳答案
对数据框
进行排序
后,您可以访问第一行索引
,如下所示:
df.index[0]
关于python - 如何从 Pandas 数据框中提取索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55777013/