Bystrov_2108:
私は私が分析するために簡単にそれを作るために周りにシフトするために必要な購入データについてのデータフレームを持っています。これまでのところ、それは次のようになります。
「」」
df =
| customers bid/offer price volume
0| 28 B 95 1200
1| 1 O 78 6
2| SOA IFILL May20 F
3| 15 B 99 3
4| 18 O 60 3
5| 120 B 40 70
6| FAL TGAL May20 F
iは現在の列から引き出さおよびそれらの関連するレコードの横独自の列に上に移動しているためにそれらを必要とするので、インデックス2及び6の行上記の例のテーブルに上記レコードに関する特定の項目のデータを表します。だから私はこのようなルックスに理想的なデータフレームが必要になります。
「」」
df =
| customers bid/offer price volume shopCode itemCode date Type
0| 28 B 95 1200 SOA IFILL May20 F
1| 1 O 78 6 SOA IFILL May20 F
2| 15 B 99 3 FAL TGAL May20 F
3| 18 O 60 3 FAL TGAL May20 F
4| 120 B 40 70 FAL TGAL May20 F
エズレル:
データがで一つの非数値列により分割さ最初の数値列がある場合ワーキングソリューションprice
列を:
#for correct default RangeIndex
df = df.reset_index(drop=True)
#test numeric rows
m = df['price'].str.isnumeric()
#join together with removed 1 from index for correct match
df1 = pd.concat([df[m], df[~m].rename(lambda x: x-1)], axis=1)
#set correct columns names
L = ['shopCode','itemCode','date','Type']
df1.columns = df.columns.tolist() + L
#back filling missing values
df1[L] = df1[L].bfill()
print (df1)
customers bid/offer price volume shopCode itemCode date Type
0 28 B 95 1200 SOA IFILL May20 F
1 1 O 78 6 SOA IFILL May20 F
3 15 B 99 3 FAL TGAL May20 F
4 18 O 60 3 FAL TGAL May20 F
5 120 B 40 70 FAL TGAL May20 F