<ipython-input-3-e36ce72b5104> in <module>
87 return s_u_df, s_i_df, p_i_df, s_t_df, p_t_df
88
---> 89 print(analyze_data())
90
91
<ipython-input-3-e36ce72b5104> in analyze_data()
27 #unit_data분석
28 for i in unq_unit1_dt:
---> 29 a = unit_data['1st-unit'].count(i)
30 unit1_d[str(i)] = a
31 a = 0
~\Anaconda3\lib\site-packages\pandas\core\series.py in count(self, level)
1718
1719 if isinstance(level, str):
-> 1720 level = self.index._get_level_number(level)
1721
1722 lev = self.index.levels[level]
~\Anaconda3\lib\site-packages\pandas\core\indexes\base.py in _get_level_number(self, level)
1418
1419 def _get_level_number(self, level):
-> 1420 self._validate_index_level(level)
1421 return 0
1422
~\Anaconda3\lib\site-packages\pandas\core\indexes\base.py in _validate_index_level(self, level)
1414 elif level != self.name:
1415 raise KeyError(
-> 1416 f"Requested level ({level}) does not match index name ({self.name})"
1417 )
1418
KeyError: "Requested level (['TFT3_Fiora', 'TFT3_Caitlyn', 'TFT3_Leona', 'TFT3_Vi', 'TFT3_Vayne', 'TFT3_Irelia', 'TFT3_Riven', 'TFT3_Thresh', 'TFT3_Ekko', 'empty', 'empty', 'empty', 'empty']) does not match index name (None)"
这是我的错误
我打算做的是我有多个重复的列表,我想将“列表作为键”:“重复数”作为值匹配
首先我得到没有重复的列表,并且
通过使用“ for in range”,我尝试算出原始列表中没有重复列表的内容
유닛.csv文件由3列组成,并且其中具有列表
有什么更好的方法可以做我打算做的事吗?
这是我的代码
unq_unit1_dt = unit_data['1st-unit'].drop_duplicates()
unq_unit2_dt = unit_data['2nd-unit'].drop_duplicates()
unq_unit3_dt = unit_data['3rd-unit'].drop_duplicates()
#저장할 리스트
unit1_d= {};s_u1_d = {};u1_L = []
unit2_d = {};s_u2_d = {};u2_L = []
unit3_d = {};s_u3_d = {};u3_L = []
s_u_d = {};u4_L = []
#unit_data분석
for i in unq_unit1_dt:
a = unit_data['1st-unit'].count(i)
unit1_d[str(i)] = a
a = 0
for j in unq_unit2_dt:
b = unit_data['2nd-unit'].count(j)
unit2_d[j] = b
b = 0
for h in unq_unit3_dt:
c = unit_data['3rd-unit'].count(h)
unit3_d[h] = c
c = 0
#데이터 정렬 후 값 추출
s_u1_d = sort_dict(unit1_d); u1_df = pd.DataFrame(s_u1_d); u1_df.to_csv("유닛1.csv", index=False,encoding = 'cp949')
s_u2_d = sort_dict(unit2_d); u2_df = pd.DataFrame(s_u2_d); u2_df.to_csv("유닛2.csv", index=False,encoding = 'cp949')
s_u3_d = sort_dict(unit3_d); u3_df = pd.DataFrame(s_u3_d); u3_df.to_csv("유닛3.csv", index=False,encoding = 'cp949')
for i in range(5):
u1_L.append(list(s_u1_d.keys)[i])
u2_L.append(list(s_u2_d.keys)[i])
u3_L.append(list(s_u3_d.keys)[i])
答案 0 :(得分:1)
我发现您的代码难以阅读,但是通常,根据Python文档,并非每个值都被授权为Python字典键。仅允许不可变值:您无法更改的值。因此,任何类型的数字都可以使用,字符串可以使用,元组可以使用,对象可以使用(这是您创建的类的实例),但是列表不起作用,因为您可以更改它们。您可以从不使用列表作为字典键。但是,同样,元组也可以。