iT邦幫忙

0

用Python或R語言整理dataTable資料匯整問題

請教各位前輩,如何使用Python或R語言來重新整理Table的資料
需求:一張Table裡存有多筆Type群組資料,假設每組資料各有100筆資料,各有其值(Value),我想要截取出每組資料集裡Index為95和5的資料,重新匯整為一張Table如圖2所示。
語法很不熟,不知道該怎麼匯整。。。><

圖1.原始資料範例

圖2.預期整理結果

Python or R

dataTable = Document.Data.Tables["myTable"]
rowCount = dataTable.RowCount
rowsToInclude = IndexSet(rowCount, True)
cursor1 = DataValueCursor.CreateFormatted(dataTable.Columns["Count"])
idx=0
for row in dataTable.GetRows(rowsToInclude, cursor1):
    found=False
    aTag = cursor1.CurrentValue
    idx=idx+1
leo226 iT邦新手 4 級 ‧ 2021-03-05 10:32:51 檢舉
不知如何在python裡group by並重建而對應的資料表

2 個回答

0
yanchen
iT邦新手 5 級 ‧ 2021-03-26 11:40:53
最佳解答

R語言 :
x是你的資料
data = data.frame("Type" = unique(x$Type) , "P95" = x[x$Index == 95,c("Value")] ,"L05" = x[x$Index == 5,c("Value")])
https://ithelp.ithome.com.tw/upload/images/20210326/20111603dWmB5uv795.png
收工!

leo226 iT邦新手 4 級 ‧ 2021-03-26 11:45:49 檢舉

感謝前輩指教分享~

2
I code so I am
iT邦研究生 3 級 ‧ 2021-03-05 15:05:41

使用Pandas比較方便。可參考:
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.groupby.html

df[(df['Index'] == 5) | (df['Index'] == 95)].groupby(['Type', 'Index']).mean()
leo226 iT邦新手 4 級 ‧ 2021-03-26 11:45:57 檢舉

感謝前輩指教分享~

我要發表回答

立即登入回答