Pandas返回索引名和列名的函数

2 人不认可

我正在寻找pandas apply函数,从该函数中可以返回元组(index_name, column_name,价值)。我想知道 价值 是指定的行、列中的条目。 类似下面的函数。

def pair(val):
  return zip(index.name,column.name,val) 
    
3 个评论
请举出一些例子。你的问题非常不清楚你在问什么。
@Poojan 我在这个特定情况下的例子是,我有一个NxN形状的数据框架。索引和列名都是一个国家的城市名称。我想把(索引名,列名,它们的权重)以元组的形式存储起来,并把它推到一个列表中。我想在Pandas的应用函数中寻求一些帮助。
你能提供一个样本数据吗?
python
pandas
Pranav
Pranav
发布于 2019-10-09
1 个回答
el123456789
el123456789
发布于 2019-10-09
已采纳
0 人赞同

如果你想为你的数据框架的每一个值建立一个带有图元的列表 df ,你可以尝试这样的方法。

my_list = []
for index, row in df.iterrows():
    for col in df.columns:
        my_list.append((index, col, row[col]))

如果你想要一个所有图元都匹配一个单一值的列表,这个函数应该可以。

def findTuples(value, df):
    my_list = []
    for col in df.columns:
        # if at least one such value in column
        if df[df[col] == value].shape[0] != 0:
            my_list = my_list + list(
                df[df[col] == value].apply(
                    lambda x: (x.name, col, x[col]),