【发布时间】:2022-08-11 11:36:04
【问题描述】:
我有以下数据框:
| index | season | round | number | driverId | position | time |
|---|---|---|---|---|---|---|
| 0 | 1996 | 1 | 1 | villeneuve | 1 | 1:43.702 |
| 1 | 1996 | 1 | 1 | damon_hill | 2 | 1:44.243 |
| 2 | 1996 | 1 | 1 | irvine | 3 | 1:44.981 |
与df_laps[[\'ms\']] = 0 我可以创建一个新列小姐所有包含 value = 0 的行。
| index | season | round | number | driverId | position | time | ms |
|---|---|---|---|---|---|---|---|
| 0 | 1996 | 1 | 1 | villeneuve | 1 | 1:43.702 | 0 |
| 1 | 1996 | 1 | 1 | damon_hill | 2 | 1:44.243 | 0 |
| 2 | 1996 | 1 | 1 | irvine | 3 | 1:44.981 | 0 |
尽管如此,价值小姐必须与价值相关时间.所以我尝试了以下df_laps[[\'ms\']] = df_laps.loc[0, [\'time\']].apply(milli),但所有值都应用了第一行的值 (1:43.702 = 103702),因为我使用 0 作为第一个 loc 参数。我如何迭代这个值,以便结果分别为:103702、104243、104981?
顺便说一句,milli 是一个将时间进入整数毫秒.你可以看到更多关于它here。
| index | season | round | number | driverId | position | time | ms |
|---|---|---|---|---|---|---|---|
| 0 | 1996 | 1 | 1 | villeneuve | 1 | 1:43.702 | 103702 |
| 1 | 1996 | 1 | 1 | damon_hill | 2 | 1:44.243 | 103702 |
| 2 | 1996 | 1 | 1 | irvine | 3 | 1:44.981 | 103702 |
换句话说,我应该怎么做才能拥有价值小姐与中的值有关时间同一行?基于https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.apply.html 我也尝试过.apply(milli, axis = 1),但随后我收到以下错误:\“milli() 得到了一个意外的关键字参数\'axis\'\”。