Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何通过文件处理从给定的数据帧列中获取唯一对?_Python_Pandas_Data Science - Fatal编程技术网

Python 如何通过文件处理从给定的数据帧列中获取唯一对?

Python 如何通过文件处理从给定的数据帧列中获取唯一对?,python,pandas,data-science,Python,Pandas,Data Science,dataframe中的示例数据: 对 预期的输出是来自Pair列的唯一对,如下所示: 我在尝试上述代码时得到的结果是: 独特的 数据有什么问题?如果我使用手动数据,那么它会工作为什么不在数据框中您可以使用设置方法: data = (((8, 8), (8, 8), (8, 8), (8, 8), (8, 8)), ((6, 7), (7, 7), (7, 7), (7, 6), (6, 7)), ((2, 12), (12, 3), (3, 4), (4, 12), (12, 12))

dataframe中的示例数据:

对 预期的输出是来自Pair列的唯一对,如下所示: 我在尝试上述代码时得到的结果是: 独特的
数据有什么问题?如果我使用手动数据,那么它会工作为什么不在数据框中

您可以使用设置方法:

data = (((8, 8), (8, 8), (8, 8), (8, 8), (8, 8)),
  ((6, 7), (7, 7), (7, 7), (7, 6), (6, 7)),
  ((2, 12), (12, 3), (3, 4), (4, 12), (12, 12)))

uniques = []

for col in data:
  for unique in list(set(col)):
    uniques.append(unique)

for x in uniques:
  print(x)

data = (((8, 8), (8, 8), (8, 8), (8, 8), (8, 8)),
  ((6, 7), (7, 7), (7, 7), (7, 6), (6, 7)),
  ((2, 12), (12, 3), (3, 4), (4, 12), (12, 12)))

uniques = []

for col in data:
  uniques += [unique for unique in list(set(col))]

for x in uniques:
  print(x)
可以使用set()方法从元组列表中删除重复项

 >>> items = [(8, 8), (8, 8), (8, 8), (8, 8), (8, 8),
(6, 7), (7, 7), (7, 7), (7, 6), (6, 7),
(2, 12), (12, 3), (3, 4), (4, 12), (12, 12)]
>>> set_items = set(items)
>>> set_items
{(6, 7), (7, 6), (12, 12), (7, 7), (8, 8), (4, 12), (2, 12), (3, 4), (12, 3)}

你已经发布了两次完全相同的问题。我建议你删除这一条,任何想发表评论的人都应该在这里这样做:不用列表,只需使用集合。set类型强制执行唯一值,最简单的方法是
set()
。(这种方法唯一的缺点是集合中的类型需要是可散列的)它不起作用我得到了这个错误/ValueError:value的长度与索引的长度不匹配。。。
data = (((8, 8), (8, 8), (8, 8), (8, 8), (8, 8)),
  ((6, 7), (7, 7), (7, 7), (7, 6), (6, 7)),
  ((2, 12), (12, 3), (3, 4), (4, 12), (12, 12)))

uniques = []

for col in data:
  for unique in list(set(col)):
    uniques.append(unique)

for x in uniques:
  print(x)
data = (((8, 8), (8, 8), (8, 8), (8, 8), (8, 8)),
  ((6, 7), (7, 7), (7, 7), (7, 6), (6, 7)),
  ((2, 12), (12, 3), (3, 4), (4, 12), (12, 12)))

uniques = []

for col in data:
  uniques += [unique for unique in list(set(col))]

for x in uniques:
  print(x)
 >>> items = [(8, 8), (8, 8), (8, 8), (8, 8), (8, 8),
(6, 7), (7, 7), (7, 7), (7, 6), (6, 7),
(2, 12), (12, 3), (3, 4), (4, 12), (12, 12)]
>>> set_items = set(items)
>>> set_items
{(6, 7), (7, 6), (12, 12), (7, 7), (8, 8), (4, 12), (2, 12), (3, 4), (12, 3)}