Browse Source

修改读取csv的类型

master
张献维 2 weeks ago
parent
commit
4d51b15dcf
  1. 12
      src/database.py
  2. 6
      src/matcher.py
  3. 4
      test_config.yaml

12
src/database.py

@ -59,9 +59,9 @@ class CSVManager:
if missing_columns:
raise ValueError(f"A_TREE CSV文件缺少必要列: {missing_columns}")
# 确保数据类型正确
df['Id'] = df['Id'].astype(int)
df['Pid'] = df['Pid'].astype(int)
# 确保所有列都作为字符串处理
df['Id'] = df['Id'].astype(str)
df['Pid'] = df['Pid'].astype(str)
df['name'] = df['name'].astype(str)
logger.info(f"A_TREE CSV文件读取成功: {self.a_csv_path} ({len(df)} 条记录)")
@ -92,9 +92,9 @@ class CSVManager:
if missing_columns:
raise ValueError(f"B_TREE CSV文件缺少必要列: {missing_columns}")
# 确保数据类型正确
df['Id'] = df['Id'].astype(int)
df['Pid'] = df['Pid'].astype(int)
# 确保所有列都作为字符串处理
df['Id'] = df['Id'].astype(str)
df['Pid'] = df['Pid'].astype(str)
df['name'] = df['name'].astype(str)
logger.info(f"B_TREE CSV文件读取成功: {self.b_csv_path} ({len(df)} 条记录)")

6
src/matcher.py

@ -154,13 +154,13 @@ class InstitutionMatcher:
return keywords
def get_parent_hierarchy(self, tree_data: pd.DataFrame, node_id: int) -> List[Dict[str, Any]]:
def get_parent_hierarchy(self, tree_data: pd.DataFrame, node_id: str) -> List[Dict[str, Any]]:
"""
获取节点的父级层次结构
Args:
tree_data: 树形数据
node_id: 节点ID
node_id: 节点ID字符串类型
Returns:
父级层次结构列表
@ -168,7 +168,7 @@ class InstitutionMatcher:
hierarchy = []
current_id = node_id
while current_id != 0:
while current_id != '0':
node = tree_data[tree_data['Id'] == current_id]
if node.empty:
break

4
test_config.yaml

@ -1,9 +1,9 @@
# CSV文件配置
csv:
# A_TREE CSV文件路径
a_csv_path: "data/a_20250709_020703.csv"
a_csv_path: "data/a_20250709_221723.csv"
# B_TREE CSV文件路径
b_csv_path: "data/b_20250709_020703.csv"
b_csv_path: "data/b_20250709_221723.csv"
# 输出CSV文件路径
output_csv_path: "test_output/ab.csv"