请求协助:将Excel表格转换为参数下的列表(跳过空值)
解决方案
方法一:用Python pandas处理
适合需要批量处理或后续还要做数据操作的场景:
import pandas as pd # 替换为你的Excel文件路径 df = pd.read_excel("your_excel_file.xlsx") # 提取每行dm1-dm4列的非空值,生成列表 def extract_non_empty(row): return [value for value in row[["dm1", "dm2", "dm3", "dm4"]] if pd.notna(value)] # 给原表新增列存储非空值列表 df["non_empty_values"] = df.apply(extract_non_empty, axis=1) # 提取需要的结果(VISITCODE+对应列表) final_result = df[["VISITCODE", "non_empty_values"]] # 打印结果或导出到新Excel print(final_result) final_result.to_excel("result.xlsx", index=False)
如果你的Excel中空单元格是空白字符串而非默认的NaN,把判断条件改成value != ""即可。
方法二:Excel内置函数直接处理
适合不想写代码的场景,在空白列(比如E列)第一行输入公式:
=TEXTJOIN(", ", TRUE, B2:E2)
下拉填充后,会自动把每行的非空值用逗号+空格拼接成字符串。如果想要更接近“列表”的格式,可以修改公式为:
="["&TEXTJOIN(", ", TRUE, B2:E2)&"]"
内容的提问来源于stack exchange,提问作者Mikayla Baer
相关产品推荐
相关产品推荐

