在Power BI中提取Binary类型字段内的数值
提取表格中Binary类型字段的内部数值并替换原字段
以下是几种常见场景下的解决方案:
1. Excel 处理方案
- 如果Binary是单元格内嵌对象/隐藏数值:
- 右键目标单元格,检查单元格格式或批注,确认数值存储位置。
- 若数值藏在格式背后,直接在旁侧单元格输入
=A1(替换A1为目标单元格),下拉填充后复制结果回原列。 - 内嵌对象可通过VBA批量提取:
Sub ExtractBinaryValue() Dim cell As Range ' 替换A2:A为你的Binary列实际范围 For Each cell In Range("A2:A" & Cells(Rows.Count, "A").End(xlUp).Row) ' 根据单元格显示文本调整判断条件 If InStr(cell.Value, "Binary") > 0 Then ' 假设数值存在于批注中,根据实际存储位置调整 cell.Value = cell.Comment.Text End If Next cell End Sub - 运行脚本后,原Binary列将被替换为提取出的数值。
2. Python Pandas 处理方案
适用于CSV/Excel格式的表格:
- 若Binary字段是带格式的字符串(如
Binary(434)):import pandas as pd df = pd.read_excel("your_table.xlsx") # 替换成你的文件路径 # 正则提取括号内的数值,根据实际格式调整表达式 df["Binary列名"] = df["Binary列名"].str.extract(r'\((\d+)\)', expand=False).astype(int) df.to_excel("processed_table.xlsx", index=False) - 若为bytes类型的二进制存储:
df["Binary列名"] = df["Binary列名"].apply(lambda x: int.from_bytes(x, byteorder='big'))
3. SQL 数据库处理方案
针对数据库中的Binary字段:
- MySQL:
UPDATE your_table SET binary_column = CAST(binary_column AS UNSIGNED); - SQL Server:
UPDATE your_table SET binary_column = CONVERT(INT, binary_column);
内容的提问来源于stack exchange,提问作者Edu2694
相关产品推荐
相关产品推荐

