擅长:python、mysql、java
<p>可以使用<code>converters</code>选项将字符串解析嵌入到<code>pd.read_csv</code>调用中</p>
<pre><code>import pandas as pd
from io import StringIO
from cytoolz.dicttoolz import merge as dmerge
from json import loads
txt = """id|attributes|attr2
255RSSSTCHL-QLTDGLZD-BLK|{"color":"Black","hardware":"Goldtone"}|{"aaa":"aaa", "bbb":"bbb"}
C3ACCRDNFLP-QLTDS-S-BLK|{"size":"Small","color":"Black"}|{"ccc":"ccc"}"""
converters = dict(attributes=loads, attr2=loads)
df = pd.read_csv(StringIO(txt), sep='|', index_col='id', converters=converters)
df
</code></pre>
<p><a href="https://i.stack.imgur.com/8P8kE.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/8P8kE.png" alt="enter image description here"/></a></p>
<p>然后我们可以<code>merge</code>遍历每一行的字典并将其转换为<code>pd.DataFrame</code>。我将使用上面作为<code>dmerge</code>导入的<code>cytoolz.dicttoolz.merge</code>。在</p>
^{pr2}$