Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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 如何解决错误消息:TypeError:unhabable type:';设置';_Python_Data Science - Fatal编程技术网

Python 如何解决错误消息:TypeError:unhabable type:';设置';

Python 如何解决错误消息:TypeError:unhabable type:';设置';,python,data-science,Python,Data Science,我试图比较两列sar\u details\u sent\u norm\u trigrams\u和 caap详细信息在熊猫数据帧中发送。还有其他专栏,但这是我正在比较的两个 我基本上是想保留两列的文本值相同的记录。 我已经执行了几种方法,但是,我一直收到以下错误消息: TypeError:无法损坏的类型:“set” 所以,我要么需要解决为什么我会收到这个问题并加以解决,当然,要么尝试另一种方法。 如有任何建议,将不胜感激 谢谢 代码段: # Set with unique terms df_s

我试图比较两列sar\u details\u sent\u norm\u trigrams\u和 caap详细信息在熊猫数据帧中发送。还有其他专栏,但这是我正在比较的两个

我基本上是想保留两列的文本值相同的记录。 我已经执行了几种方法,但是,我一直收到以下错误消息:

TypeError:无法损坏的类型:“set”

所以,我要么需要解决为什么我会收到这个问题并加以解决,当然,要么尝试另一种方法。 如有任何建议,将不胜感激

谢谢

代码段:

# Set with unique terms
 
df_sar['sar_details_sent_norm_trigrams_unique'] = df_sar['sar_details_sent_norm_trigrams_'].apply(lambda x: set([trigram for sent in x for trigram in sent]))
 
# Set with unique terms
 
df_caap['caap_details_sent_norm_trigrams_unique'] = df_caap['caap_details_sent_norm_trigrams_'].apply(lambda x: set([trigram for sent in x for trigram in sent]))
 
 
 
#Attempt 1: 
 
df_caap[df_caap.caap_details_sent_norm_trigrams_unique.isin(df_sar.sar_details_sent_norm_trigrams_unique)]
 
 
#Attempt 2:
 
set(df_caap.caap_details_sent_norm_trigrams_unique).intersection(set(df_sar.sar_details_sent_norm_trigrams_unique))
TypeError回溯(最近一次调用上次) in()21

集合(df1.列).交集(集合(df2.列))22 --->23组(df\U caap.caap\U详细信息\U发送的\U规范\U三角图\U唯一)。交叉点(组(df\U sar.sar\U详细信息\U发送的\U规范\U三角图\U唯一))

TypeError:无法损坏的类型:“set”


set
是可变数据类型,因此为其计算哈希作为哈希表数据结构(例如dict,set)中的键是不安全的,因为如果数据结构发生变化,哈希可能会改变,这将违反哈希表不变量。您可以改为使用
frozenset
,它是不可变的,可以用作哈希表中的键。

set
是可变的数据类型,因此为它计算哈希作为哈希表数据结构(例如dict,set)中的键是不安全的,因为如果数据结构发生变化,哈希可能会发生变化,这将违反哈希表不变量。您可以改为使用不可变的
frozenset
,它可以用作哈希表中的键。

如果这些集合是嵌套的,则会发生此错误。首先尝试将其展平。如果集合嵌套,则会发生此错误。先把它压平。