<ul>
<li><a href="https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.pivot.html" rel="nofollow noreferrer">https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.pivot.html</a>是基本功能</li>
<li>定义了一个列,如果<em>价格</em>不唯一,则每个<em>Mærke</em>都会发生变化</li>
</ul>
<pre><code>import io
import pandas as pd
df = pd.read_csv(io.StringIO(""" attr values price
0 Mærke Knauf Insulation 24.95
1 Produkttype Bygningsisolering 24.95
2 Serie SPACE 24.95
3 Model FORMSTYKKE 24.95
4 Mærke Bromiflex 20.00
5 Produkttype Rørskål 20.00
6 Materiale Opskummet polyethylen 20.00
7 Størrelse Ø18 MM 20.00
8 Mærke Skamowall 190.00
9 Produkttype Isoleringsplade 190.00
10 Serie BASIC 190.00
11 Materiale Brændt kalk og mikrosilika 190.00
12 Mærke Rockwool 210.00
13 Produkttype Bygningsisolering 210.00
14 Serie Terrænbatts 210.00
15 Materiale Stenuld 210.00
16 Mærke Knauf Insulation 65.00
17 Produkttype Isolering 65.00"""), sep="\s\s+", engine="python")
df.assign(prod_idx=df["attr"].eq("Mærke").cumsum()).pivot(
index=["prod_idx", "price"], columns="attr", values=["values"]
).droplevel(0,1).reset_index()
</code></pre>
<div class="s-table-container">
^{tb1}$
</div>