gpt4 book ai didi

python - 将多列中的行移动到各自的列中 Python

转载 作者:行者123 更新时间:2023-12-02 07:32:58 24 4
gpt4 key购买 nike

我有一个关于购买数据的数据框,我需要对其进行移动以使其易于分析。到目前为止看起来像:

'''

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

在上面的示例表中,索引 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

关于python - 将多列中的行移动到各自的列中 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60707662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com