pandas實現行轉列

2021-09-26 06:14:29 字數 852 閱讀 4481

hive進行大資料分析資料經常用到行轉列,pandas也可以的。

不解釋直接上**

# -*- coding:utf-8 -*-

import pandas as pd

c =

df = pd.dataframe(c)

print(df)

df_left = df['key']

df_values_0 = df['values'].str.split('、',expand=true)#expand=true單獨成列

df11 = df_values_0.stack()#行轉列

df12 = df11.reset_index(level=1,drop=true)#刪除第二列索引

df13 = pd.concat([df12],axis=1,keys=('values',))#給第二列增加列名

df14 = pd.merge(df_left,df13,how='left',left_index=true,right_index=true)#根據索引值進行left join

df15 = df14.reset_index(level=0,drop=true)#重置索引

print(df15)

其結果

key  values

0 a a、b

1 b x、y、z

key values

0 a a

1 a b

2 b x

3 b y

4 b z

SQL實現行轉列

需求 用sql實現行轉列。如下圖所示 行顯示的資料轉換成列顯示 實現行轉列的sql指令碼如下 select date format last day date format now y m d y m d as 業務日期,max case index code when ind20101001 th...

Mysql實現行轉列

create table loc loc varchar 50 xiaoqu varchar 50 addr varchar 50 company varchar 50 插入資料 區域 小區名稱 房屋位址 中介公司寶山 慶安三村 綏化路52弄a寶山 月浦十村 月浦十村67號b寶山 盛橋三村 盛橋三村...

sql實現行轉列

行轉列不留空 select a as 訂單號 四川 as 位址 into result insert into result select a as 訂單號 成都 as 位址 union all select b as 訂單號 新疆 as 位址 union all select b as 訂單號 喀...