五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(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可還行?的評論 (共 條)

分享到微博請遵守國家法律
西和县| 四平市| 牡丹江市| 三都| 仁化县| 横峰县| 邢台县| 永州市| 肇庆市| 灵璧县| 宁安市| 江门市| 龙口市| 乐东| 广东省| 聂拉木县| 泌阳县| 稷山县| 团风县| 湖州市| 河南省| 临湘市| 崇义县| 平武县| 利津县| 桃园县| 元氏县| 通许县| 如东县| 建阳市| 新营市| 平罗县| 金阳县| 肇庆市| 华池县| 宁德市| 大城县| 泌阳县| 靖江市| 城步| 广灵县|