【发布时间】:2021-02-04 19:01:11
【问题描述】:
如果我有一个如下所示的数据框:
| Time | Wavelength | Absorption |
|---|---|---|
| 1 | 100 | 0.123 |
| 1 | 101 | 0.456 |
| 1 | 102 | 0.798 |
| 2 | 100 | 0.101 |
| 2 | 101 | 0.112 |
| 2 | 101 | 0.131 |
我想创建一个新的数据框,它只包含 Time = 1 时的行,并且只有 Wavelength 和 Absorption 列:
| Wavelength | Absorption |
|---|---|
| 100 | 0.123 |
| 101 | 0.456 |
| 102 | 0.798 |
我该怎么做呢?
样本数据:
import pandas as pd
df = pd.DataFrame({'Time': {0: 1, 1: 1, 2: 1, 3: 2, 4: 2, 5: 2},
'Wavelength': {0: 100, 1: 101, 2: 102, 3: 100, 4: 101, 5: 101},
'Absorption': {0: 0.123,
1: 0.456,
2: 0.798,
3: 0.101,
4: 0.112,
5: 0.131}})
【问题讨论】:
-
df[df['Time'] == 1]][['Wavelength', 'Absorption']] -
df.query('Time=1')或df[df['Time']==1]? -
res = (df[df['Time']==1]).drop('Time',axis=1) -
Epsi95 答案有效。谢谢你。
df2 = df1[df1['Time'] == 1][['Wavelength', 'Absorption']] -
@gopher 下一次,请包含here 中描述的示例数据集。由于这是您的第一篇文章,我已经为您完成了。请记住,您将节省自己和那些试图回答您未来问题的人大量时间,只需花费三分钟时间来学习提供的链接中的方法.正如您提供的那样,您的表格肯定是一个好的开始,但是在代码 sn-p 中准备好
df会更好。编码愉快!