python - 将列表中的某些值与列中的值匹配

标签 python excel list openpyxl

我有以下问题:
我必须列:
enter image description here
我必须为第一列中的每个元素创建一个列表。准确地说,我必须创建以下列表:
元素 1 的第一个列表应包含 [a, g]
对于元素 2:[r, t] 等。
我尝试了一些东西,但我的东西一定不正确
我用来找出第一列中重复的元素的代码的第一部分

    values = []
for i in range(2, ws11.max_row+1):
    if ws11.cell(row=i, column=1).value in values:
        pass
    else:
        values.append(ws11.cell(row=i, column=1).value)
print(values)
对于第二部分,我编写了以下代码:
listanew = []
for i in range(1, len(values)+1):
    for j in range(2, ws11.max_row+1):
        if ws11.cell(row=j, column=1).column == values[i-1]:
            listanew.append(ws11.cell(row=j, column=2).value)
print(listanew)
当我试图打印我的新列表时,我得到了一个空列表。
你能给我一个解决方案吗?

最佳答案

我冒昧地为这两列命名。 “A”和“B”。以下是按列“A”对数据进行分组并获取“B”中所有元素的列表的方法:

df = pd.DataFrame({'A': [1,2,3,4,2,3,4,1],
                   'B': ['a', 'r', 'fg', 'h', 't', 'd', 'd', 'g']})
df = df.groupby('A')['B'].apply(list).reset_index()

关于python - 将列表中的某些值与列中的值匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69874947/

相关文章:

python - PyCrypto 导出/导入签名

vba - 多个类似的动态创建的命令按钮的操作

c# - SpreadsheetGear CopyFromDataTable 单元格格式

c++ - C 转换失败 : cannot cast from void* to a C struct

python - 从 python 中的 Twisted 协议(protocol)获取裸套接字 fd?

python - Python 会自动清除对象吗?

python - gevent 和 SSL 导致 "EOF occurred in violation of protocol"

java - 以特定模式读取 csv 文件并存储在 map 或二维数组中

python - 如何为元组的每个元素添加一个数字?

python - 为什么 Python 要求列表理解中的子句是错误的?