Python中文
首页
教程
问答
标签
搜索
登录
注册
Pandas:如何在一系列列中找到第一个有效列
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个在熊猫数据框中的比赛不同部分的数据集,我需要从中计算某些特征。看起来像这样:</p> <pre><code>id distance timeto1000m timeto800m timeto600m timeto400m timeto200m timetoFinish 1 1400m 10 21 30 39 50 60 2 1200m 0 19 31 42 49 57 3 1800m 0 0 0 38 49 62 4 1000m 0 0 29 40 48 61 </code></pre> <p>所以,我需要为每一行找到第一个非零的<code>timetoXXm</code>列和相应的距离<code>XX</code>。例如,对于<code>id=1</code>这将是1000米,对于{<cd4>}这将是400米等等</p> <p>我可以使用一系列<code>if..elif..else</code>条件来完成这项工作,但是我想知道在pandas/numpy中是否有更好的方法来进行这种查找?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>使用<code>idxmax(1)</code></p> <pre><code>df.set_index(['id', 'distance']).ne(0).idxmax(1) id distance 1 1400m timeto1000m 2 1200m timeto800m 3 1800m timeto400m 4 1000m timeto600m dtype: object </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
pyVISA GPIB GET(组执行触发器)
2 回答
Pyvisa IOerror设备:Korad K3005d电源
4 回答
PyVISA mac OS X(山狮)安捷伦33250
10 回答
Pyvisa Pyusb无法加载大于1 MB的序列
1 回答
pyVisa RS232太慢
8 回答
PyVISA RS232超时错误(安捷伦电源)
6 回答
PyVISA SCPI命令和查询(值更新问题)
4 回答
PyVISA SerialInstrument需要硬重置才能在故障后连接
4 回答
pyvisa,未找到函数viOpen
7 回答
pyVISA:以编程方式将仪器返回到本地模式
1 回答
pyvisa:接口类型是什么意思?
7 回答
pyvisa.errors.VisaIOError:VI_ERROR_TMO(1073807339):操作完成前超时
6 回答
PyVisa“更复杂的示例”根本不运行Keithley 2400不理解的命令
9 回答
PyVisapy后端
9 回答
PyVISA不能写入超过7F的十六进制字符
9 回答
PYVISA中的ENUM模块和cStringIO模块
10 回答
PyVisa代码的图形用户界面
1 回答
Pyvisa使用按键电源超时
8 回答
PyVISA和Kethley 2701只能从一个通道获取结果
9 回答
PyVisa和Printing New D
9 回答