因此,假設我有這樣的資料,其中包含一些分隔符(如逗號),我想將這些資料拆分為新的單元格,或者拆分為列,或者拆分為行。
| 資料 | 地點 |
|---|---|
| 一館兩館 | A市 |
| 第三公園、第四公園、第五公園 | B市 |
你會怎么做?方法有很多,為什么首選提供的方法?
uj5u.com熱心網友回復:
Excel 手動方法:單擊資料>文本到列。如果您想要一列中的資料,現在只需復制并過去。這僅在資料集很小并且您只做一次時才有用。
Power Query 方法:此方法您對資料源執行一次,然后在將來資料更改時單擊重繪 按鈕。資料源幾乎可以是 csv、

3 - 現在選擇拆分方法,有分隔符,還有其他 6 個選項。
4 - 對于此資料,我使用自定義并使用“,”
5 & 6 - 要拆分,您必須選擇高級選項。做出選擇。
7 關閉并加載
這是一種很好的方法,因為除非您愿意,否則您不必在 Power Query 中撰寫代碼。
uj5u.com熱心網友回復:
Python 方法 確保你已經 pip 安裝了 pandas 或使用 conda 安裝 pandas。
代碼是這樣的:
import pandas as pd
df = pd.read_excel('path/to/myexcelfile.xlsx')
df[['key.0','key.1','key.2']] = df['The Data'].str.split(',', expand=True)
df.drop(columns=['The Data'], inplace = True)
# stop here if you want the data to be split into new columns
資料看起來像這樣
Location key.0 key.1 key.2
0 City A One Museum Two Museum None
1 City B 3rd park 4th park 5th park
要拆分成行,請繼續執行下一個代碼部分:
stacked = df.set_index('Location').stack()
# set the name of the new series created
df = stacked.reset_index(name='The Data')
# drop the 'source' level (key.*)
df.drop('level_1', axis=1, inplace=True)
現在完成了,看起來像這樣
Location The Data
0 City A One Museum
1 City A Two Museum
2 City B 3rd park
3 City B 4th park
4 City B 5th park
python 的好處是對于較大的資料集更快,您可以使用正則運算式以可能的 100 種方式進行拆分。資料源可以是您將用于電力查詢等的所有型別。
uj5u.com熱心網友回復:
R
library(data.table)
dt <- fread("yourfile.csv") # or use readxl package for xls files
dt
# Data Location
# 1: One Museum, Two Museum City A
# 2: 3rd Park, 4th Park, 5th Park City B
dt[, .(Data = unlist(strsplit(Data, ", "))), by = Location]
# Location Data
# 1: City A One Museum
# 2: City A Two Museum
# 3: City B 3rd Park
# 4: City B 4th Park
# 5: City B 5th Park
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/472661.html
上一篇:洗掉從第一個開始的第二個作業表(所以1、3、5...)
下一篇:獲取沒有范圍的名稱的值
