gpt4 book ai didi

python - Pandas 根据索引标签选择特定列中的值

转载 作者:太空宇宙 更新时间:2023-11-03 20:14:46 25 4
gpt4 key购买 nike

所以问题实际上如下:

我创建(直接从 pandas 文档复制粘贴)数据框:

d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)

这将创建一个如下所示的 DataFrame:(其中最左边的列实际上是索引)

 col1  col2
0 1 3
1 2 4

然后我想分配我的名字x col2 和 row1 的值,即 4。但我想根据 col1 中的值来执行此操作(因为那是我知道的值)。所以它看起来或多或少像这样:

x = df.loc[df.col2 == df.loc[df.col1 == 2]]

我知道这没有意义,但也许有人理解这个问题并提出提示:)也许这非常容易做到,但我现在只能思考所有 .loc 和 .iloc 的可能性

“真正的”问题是编写一个类,根据提供的机场名称保存坐标(纬度、经度列):(这仍然有点令人困惑)

def __init__(self, name):
import pandas as pd
alleDaten = pd.read_csv("airports.dat", delimiter=",", usecols=[1,6,7])
alleDaten.columns = ["name","lat","lon"] #rename columns
self._name = alleDaten.loc[alleDaten.name == "name"] #get name based on the provided name of the airport
self._x = alleDaten.loc[alleDaten.name == "name", ["lat"]] # get lat based on the provided name
self._y = alleDaten.loc[alleDaten.name == "name", ["lon"]] # get lon based on the provided name

非常感谢您的帮助:)!!

最佳答案

这应该可以满足您的要求(仅获取过滤后的 Pandas 的值):

x = df.loc[df.col1 == 2, "col2"]
print(x.to_list()[0])

输出:

4

[Program finished]

关于python - Pandas 根据索引标签选择特定列中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58525878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com