Frozenset to list 产生错误的结果
Frozenset to list yields wrong results
我做的是:
a = dataframe.antecedants
print(type(a[0]))
print(a[10])
b = a.tolist()
print(type(b[10]))
print(b[10])
c = [list(x) for x in a]
print(type(c[10]))
print(c[10])
我试图将我的 apriori 数据框保存到 Elasticsearch,因为它包含 frozenset,所以我遇到了一些错误,所以将 frozenset 转换为列表,在这里,当我将我的 frozenset 转换为列表时,我得到了错误的结果。为什么我会这样?我只想将 frozenset 列转换为列表列表。
forzenset
数据如下:
样本:
0 (1)
1 (522)
4 (349)
5 (37)
6 (372)
7 (37)
8 (373)
9 (37)
10 (372)
11 (349)
12 (373)
13 (349)
14 (372)
15 (373)
16 (372, 349)
17 (372, 37)
18 (37, 349)
19 (372)
20 (349)
21 (37)
22 (349, 373)
23 (37, 373)
我使用的库是:
import pandas as pd
import numpy as np
from pandas.io.json import json_normalize
from mlxtend.frequent_patterns import apriori
from mlxtend.frequent_patterns import association_rules
from elasticsearch import Elasticsearch
import json
然后:
dataframe = apriori(dataframe, min_support=0.1, use_colnames=True)
dataframe = association_rules(dataframe, metric="lift", min_threshold=1)
new = dataframe.copy()
基本上将 frozenset
列转换为 lists
的 list
是我想要实现的目标。
已更新
尽管我做的时候:
my_list = []
for antecedant in new.antecedants:
my_list.append(list(antecedant))
my_list
这成功了!但是:
column_values = pd.Series(my_list)
new.insert(loc=0, column='new_column', value=column_values)
new
但在数据框中再次给出了错误的结果。
new.reset_index(drop=True, inplace=True)
对我有用!如您所见,在先验和关联规则形成后索引不是连续的,所以重置索引帮助了我!
我做的是:
a = dataframe.antecedants
print(type(a[0]))
print(a[10])
b = a.tolist()
print(type(b[10]))
print(b[10])
c = [list(x) for x in a]
print(type(c[10]))
print(c[10])
我试图将我的 apriori 数据框保存到 Elasticsearch,因为它包含 frozenset,所以我遇到了一些错误,所以将 frozenset 转换为列表,在这里,当我将我的 frozenset 转换为列表时,我得到了错误的结果。为什么我会这样?我只想将 frozenset 列转换为列表列表。
forzenset
数据如下:
样本:
0 (1)
1 (522)
4 (349)
5 (37)
6 (372)
7 (37)
8 (373)
9 (37)
10 (372)
11 (349)
12 (373)
13 (349)
14 (372)
15 (373)
16 (372, 349)
17 (372, 37)
18 (37, 349)
19 (372)
20 (349)
21 (37)
22 (349, 373)
23 (37, 373)
我使用的库是:
import pandas as pd
import numpy as np
from pandas.io.json import json_normalize
from mlxtend.frequent_patterns import apriori
from mlxtend.frequent_patterns import association_rules
from elasticsearch import Elasticsearch
import json
然后:
dataframe = apriori(dataframe, min_support=0.1, use_colnames=True)
dataframe = association_rules(dataframe, metric="lift", min_threshold=1)
new = dataframe.copy()
基本上将 frozenset
列转换为 lists
的 list
是我想要实现的目标。
已更新
尽管我做的时候:
my_list = []
for antecedant in new.antecedants:
my_list.append(list(antecedant))
my_list
这成功了!但是:
column_values = pd.Series(my_list)
new.insert(loc=0, column='new_column', value=column_values)
new
但在数据框中再次给出了错误的结果。
new.reset_index(drop=True, inplace=True)
对我有用!如您所见,在先验和关联规则形成后索引不是连续的,所以重置索引帮助了我!