我想问一个问题是这个帖子的扩展:
该线程的代码如下所示:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': 'foo bar foo bar foo bar foo foo'.split(),
'B': 'one one two three two two one three'.split(),
'C': np.arange(8), 'D': np.arange(8) * 2})
print(df)
# A B C D
# 0 foo one 0 0
# 1 bar one 1 2
# 2 foo two 2 4
# 3 bar three 3 6
# 4 foo two 4 8
# 5 bar two 5 10
# 6 foo one 6 12
# 7 foo three 7 14
print(df.loc[df['D'] == 14])
Run Code Online (Sandbox Code Playgroud)
这将产生以下结果:
A B C D
7 foo three 7 14
Run Code Online (Sandbox Code Playgroud)
根据上面的代码,我如何返回单个'值'而不是一行.也就是说,如何返回值'7'或值'foo'而不是整行?
@JonahWilliams很接近,这是一个有效的工作:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': 'foo bar foo bar foo bar foo foo'.split(),
'B': 'one one two three two two one three'.split(),
'C': np.arange(8), 'D': np.arange(8) * 2})
print(df.loc[df['D'] == 14]['A'].index.values)
>>>[7]
print(df.loc[df['D'] == 14]['A'].values)
>>>['foo']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15892 次 |
| 最近记录: |