国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【Tidyverse優(yōu)雅編程】:批量word文檔轉(zhuǎn)Excel,吊打Python可還行?

2022-11-29 15:58 作者:張敬信老師  | 我要投稿

問題來自頭條文章:

www.toutiao.com/article/7170606479974646284/?log_from=5f6d1680db622_1669688728187

他們總說,R 語言處理文本數(shù)據(jù)、自動化辦公不行,是真不行嗎?本篇就來個?吊打 Python?看看。

1 問題描述

  • 有多個 word 文檔:

  • 文檔內(nèi)容:

  • 需求:

批量讀取 word 文檔內(nèi)容,按名目:序號、方名、組成、用法、主治、備注,整理成 Excel 表格,結(jié)果如下:

注:若未包含【組成】【用法】【主治】,則內(nèi)容都?xì)w入備注。

2 解決問題

首先強(qiáng)調(diào):文本數(shù)據(jù)處理,肯定離不開正則表達(dá)式!

  • 加載包

  • 批量讀取 word 文檔

得到的結(jié)果是數(shù)據(jù)框,每個文檔占一行,doc_id?列是文件名,text?列是文檔內(nèi)容,一個文檔內(nèi)容整個是一個字符串。

  • 按藥方切分列

此時,一個藥方占一行了。

  • 解決一個藥方的信息提取,寫成函數(shù)

說明:都是正則表達(dá)式提取,主要用到零寬斷言,根據(jù)兩端標(biāo)志提取中間想要的內(nèi)容。為什么看著這么啰嗦呢?是因?yàn)閿?shù)據(jù)是有陷阱的:不是每個藥方都包含【組成】、【用法】、【主治】,所以右端需要設(shè)置為下一項(xiàng)或結(jié)尾標(biāo)志$。

測試一個看看:

沒問題?。ㄎ也铧c(diǎn)被對不齊給騙了)

  • 循環(huán)迭代,批量解決問題

就是把函數(shù)?f?依次應(yīng)用到數(shù)據(jù)的?text列,結(jié)果按行合并:

  • 寫出到 Excel 文件

結(jié)果就是問題描述中的結(jié)果表(略)。

問題解決!

以上是為了給大家展示中間過程,方便大家理解。拿掉不必要的中間過程,借助管道,完整代碼如下:

附錄

我主張的數(shù)據(jù)編程思維:

我的R語言新書:《R語言編程—基于tidyverse》

電子搶讀版已上線(人郵)異步社區(qū),紙質(zhì)版預(yù)計(jì)12月底上市:

《R語言編程:基于tidyverse》電子搶讀版購買地址:

https://www.epubit.com/bookDetails?id=UB7db2c0db9f537&tabName=%E6%8A%A2%E8%AF%BB%E7%89%88&floorName=%E7%B2%BE%E9%80%89%E7%BA%B8%E4%B9%A6



【Tidyverse優(yōu)雅編程】:批量word文檔轉(zhuǎn)Excel,吊打Python可還行?的評論 (共 條)

分享到微博請遵守國家法律
望谟县| 西和县| 田阳县| 扶沟县| 营口市| 弋阳县| 永和县| 拉萨市| 阳山县| 历史| 旬邑县| 睢宁县| 全州县| 湖州市| 教育| 镇宁| 建阳市| 旅游| 洪泽县| 翁牛特旗| 江源县| 南皮县| 惠东县| 大理市| 桓仁| 伽师县| 镇雄县| 边坝县| 抚远县| 上思县| 景东| 佛学| 抚顺县| 东乌| 铜川市| 含山县| 石阡县| 庄河市| 锡林浩特市| 来宾市| 东阿县|