#葉郎每日讀報 #娛樂產業國際要聞揀1加2條
│2021年的激進實驗後,Warner Bros. 和 AMC 簽訂的新映演協議確認了45天空窗期將是2022年以後的好萊塢新共識│
• 全球最大連鎖電影院品牌 AMC 執行長 Adam Aron 昨天在跟股東開線上會議發佈財報資訊時,宣佈了另一個好萊塢的重大消息:AMC 剛剛與 Warner Bros. 簽訂了2022年之後的映演協議,並確認2021年 Warner 採取的同步上架串流激進實驗將正式終結,並自2022年開始採用比疫情之前打了對折的「45天空窗期」繼續和 AMC 合作。Warner 先前也跟規模小於 AMC 的另一個連鎖品牌 Regal 簽訂了類似的協議。不過更重要的是 AMC 同時也透露他們同樣和另外兩家好萊塢片廠 Paramount 和 Disney 簽訂了類似的協議。綜合這些資訊,我們幾乎可以斬釘截鐵地下結論:被 COVID-19 打碎的空窗期經歷混亂的2021年之後,將在2022年以45天的新模樣重出江湖,同時也宣示了被串流打亂的市場將在2022年試圖重新找到傳統電影院發行和網路發行(串流)的新平衡點(當然不意味這個平衡點勢必會帶來原力的平衡)。
• AMC 執行長 Adam Aron 説:「我們已經針對這個重要議題(空窗期)跟每一家好萊塢片廠進行了私下交換意見。我們慢慢地看到新的共識浮出水面:空窗期確實是建立系列賣座電影生意是最好的方法。」他強調片廠告訴他們過去這段期間對空窗期的實驗和更激進的同步上架策略都只是他們因應疫情的短期作法,而 AMC 將樂於迎接這些片廠在2022年之後重新擁抱新空窗期規則。
• 這個新協議來得正是時候。Disney 正因為《Black Widow 黑寡婦》同步上架串流的違約爭議和女主角 Scarlett Johansson 鬧得滿城風雨。而最早宣佈2021年全面採取同步上架串流策略的 Warner 雖然因為早在去年底就開始用補償金安撫劇組而沒有引發太多爭執(除了明明不是被害當事人卻還在生氣的 Christopher Nolan),但此時此刻 Warner 也開始面對了票房表現不如預期的暑假電影寒冬。歷經暑假前幾部電影票房大好的短暫慶祝行情之後,由於同步上架策略和 Delta 病毒株帶來的恐慌氣氛,原本大受看好的導演 James Gunn 新片《The Suicide Squad 自殺突擊隊:集結》上週末上映的前三天只在北美累積了2650萬美元票房,加計全球市場總計7220萬。這個數字在近幾週連續壞消息中並不算太大的意外。然而這個數字不僅是低於市場原先預期,而且考量該片製作成本高達1.85億美元,加計行銷總計可能直逼3億,3天7千萬票房對 Warner 來說可能已經是打從心裡涼了一半。
• Variety 分析《自殺突擊隊:集結》表現不如預期的原因,除了過去幾個禮拜我們已經聽到會背的「Delta 病毒株肆虐+同步上架串流」這兩點之外,還提及該片R級分類導致較容易因為衝動出門(同時風險意識較低)的青少年無法貢獻票房。NATO 美國電影院經營者協會的主席 John Fithian 先前受訪時做了有點前後矛盾的評論:他強調 Delta 病毒導致觀眾不出門看電影的效應是暫時的,他有信心等到 Delta 降溫觀眾自然會回來。可是先前《黑寡婦》爭議時他又認為串流是最大禍首,只要串流上面有得看電影院票房,就會大受影響。
• 無論如何,「同步上架串流策略」在2022年之後可能會變成瀕危動物(但或許不會完全滅絕),而從天而降的「45天空窗期」將統治這個剛剛被隕石撞得支離破碎的市場。然而這一切可能都無法扭轉這一年多內快速取代恐龍片廠成為整個地球主人的強勢行業——串流——的主導局面。
◇ 新聞來源:
‘The Suicide Squad’ stumbles in US as Warners, AMC strike 45-day theatrical window pact for 2022(https://flip.it/GsFmvr)
AMC Theatres and Warner Bros. Agree to Shorten Theatrical Window(https://flip.it/9kPSwh)
Why ‘The Suicide Squad’ Stumbled at the Box Office(https://flip.it/.RoviC)
───────────────
其他今天也可以知道一下的事:
│AT&T 正式脫手旗下的動畫串流服務 Crunchyoll,將由 Sony 買下之後與旗下另一個動畫串流服務 Funimation 合併│
◇ 新聞來源:Sony’s Funimation Closes $1.2B Crunchyroll Acquisition From AT&T(https://flip.it/P.UFvG)
│Roku 繼續從已經結束營業的短命串流服務 Quibi 片庫中上架23個節目到自家平台上供機上盒用戶免費觀看│
◇ 新聞來源:Roku to Add 23 Titles From Quibi Library to the Roku Channel(https://flip.it/bPEwPw)
r字串取代 在 李妍慧 Yen Hui Lee Facebook 的最讚貼文
『雙11來襲!你消費了嗎?💸』
今天是雙11,年度規模最大的網路購物狂潮來到最高點!不知道大家今年下手了嗎?💰
從11月1號開始,明顯感覺周邊接連不斷出現1111購物節的各式折扣訊息,不管是 #滑臉書、#看訊息、#IG、#Line、#email、#甚至廣播、#google廣告,一大堆關於雙十一購物節優惠廣告,下殺幾折、買一送一、滿多少打幾折等字眼不斷出現,鋪天蓋地、無孔不入、無所不用其極的吸引你掏出錢包來花錢消費!
追溯雙十一購物節由來,一開始由中國淘寶仿照類似美國感恩節,在秋季舉行的一次大型促銷活動,在11/11這一天(光棍節)利用學生、白領階層的號召力,打開年輕網購群體的消費市場。時至今日,1111購物節已經成唯一年一度的電商盛事,也是許多消費者期待,把那些平常口袋名單商品,一次補足的瘋狂購物日。對於雙十一購物節,🔍我有些看法,歡迎大家一起來討論:
一、#吸引消費者帶動網購效應
從2008年到現在,雙11購物節從中國往外擴散,平常沒網購經驗,但身邊朋友為網購既得優惠者,藉由消費者間口耳相傳,帶動網路購買效應,讓雙十一擁有更多的消費者,雙十一成了隨處可見的一種存在,不管是手機、網站、新聞媒體以及各處看板。代之而起的,網民購物行為改變、電商平台、通路、集客力企劃、大型活動話題帶動等等,一年比一年推陳出新,各電商積極備戰,不但拼價格、拼通路、拼速度、拼庫存,大者越大的電商集團越能吸引大家眼球,讓這個「無中生有」的網路購物節營業額屢創新高。🤔
二、#取代週年慶每年雙十一都是購物盛會
要形成一場購物盛會,不僅要有足夠長的預熱期,更要在盛會當天營造出濃厚的氛圍。預熱期裡要盡可能將商家和商品的優惠資訊傳遞出去,並且不斷刺激消費者在雙十一那天的購物慾望,增強大家對那一天的期待。
在傳統百貨行業,藉由年中慶、週年慶刺激買氣,但現在面臨網路購物的挑戰,對比之下,網購更便利、更迅速、更便宜及更省時,不即時因應調整,消費者荷包大餅有限,很可能未來被網購平台取代。👋
三、#資本主義下網路消費者權益保障要加強
商人在資本主義發展下,成立雙十一購物節,一個蓬勃的消費市場對於國內經濟的重要性不言而喻,「消費增長=經濟增長」,為此,民眾消費,商人窮盡手段創造消費需求,無論消費者是否真的需要,在數不盡的優惠商品充斥我們生活周遭,即使不需要,但看到價錢,容易生出「不買白不買」心態,消費下去。💵
1111購物節的無數訂單消費行為背後,是否有廣告不實?哄抬價格?資訊不對等?等等消費糾紛,消保官及消保單位也應該多關注詳查。⚖️
四、#獨立商家的反抗
今天雙11折扣戰,讓部分獨立書店串連「歇業」抵制。由於momo購物平台祭出大量書籍折扣,網路書店博客來也擴大平日折扣,兩大圖書電商平台大打折扣戰,引起小型或個別圖書業者以歇業抵制。📚
包含 #三餘書店、#無論如河、#有河書店等 獨立書店在粉專發布訊息,將在11月11日「歇業」一天。他們認為這種優惠,#獨立書店、#社區型書店、#小出版社給不起,持續進行將讓出版產業大者恆大、小者自生自滅,獨立書店之所以是獨立書店,想必有其他地方買不到的書,📖如果以其他通路買得到的書為主要銷售,那便失去獨立書店的價值,換言之只是小一號的誠品。
消費行為來自於需求還是來自於虛假慾望?供給端提供的是多樣化的商品內容還是價格便宜同樣商品?低價傾銷雖然量大,但賣方實質獲利有多少,還是只是一場瞎忙大拜拜似的嘉年華活動?
1111你下手了嗎?希望大家都能有物超所值的購物經驗。
#雙11購物節 #1111書店歇業潮
#當這世界再也沒有書店時
#網路購物資訊轟炸
相關新聞:
一、雙11折扣「把圖書當衛生紙」 部分獨立書店「歇業」抵制
https://www.chinatimes.com/....../20201110006059......
二、雙11街訪:花錢使人快樂?民眾買包買錶不手軟一個字「爽」
https://news.ltn.com.tw/news/life/breakingnews/3347479
三、臉書獨立書店1111書店歇業潮
https://reurl.cc/x0A1ob
________
加個Line(妍慧選民通報站):https://line.me/R/ti/p/%40leehui
加個IG(日常妍慧都在這):https://instagram.com/hsin.chu.lee
r字串取代 在 君子馬蘭頭 - Ivan Li 李聲揚 Facebook 的最佳解答
[實體書店既無量,亦賣唔到高價,冇得玩的]原因?因為根本冇咁多人睇書,睇嘅亦唔會畀幾千銀買本書。點解?因為替代品太平。
話時話,呢排記得keep 住like and share,主動入嚟睇,同埋設定做see first.真係搵食艱難。但感激大家,Keep住做,呢排啲Reach係好返好多的,但唔好鬆懈。一個都不能少呀
上次鬧辰衝好多人讚(https://fbook.cc/3D5q)。今次正經,講返書店本身。
TL:DR – 書店點解難做?唔係因為租貴。其他舖頭租就唔貴?係因為書店收入低。點解書店收入低?因為書既賣唔到量,單價亦唔會高。你計下自己一年用幾多錢買書?幾千好未?但好多人同條女食餐飯手仔都未拖就冇咗。餐廳包裝下可以幾百蚊餐變幾千,但書唔得 —因為你享用嘅過程唔使食裝修食品味,所以書店只能變咖啡店。你拎起本書打卡就得了,之後睇書係冇得炫耀的。
圖:首爾COEX,其實係圖書館,唔係書店。有乜書?唔知,唔識韓文。哥睇嘅唔係書,係企鵝(對,樓下有水族館,幾舊水入場)
1. 但凡有乜舖頭執笠。例牌答案係,地產霸權啦,租貴趕絶啦,米芝蓮又話死亡之吻加租迫死你啦(*)。但從來冇人會講人工貴。舊文寫過,至少N咁多上市嘅連鎖餐廳,最大成本一定係人工,唔係租(https://bit.ly/2DgvD5W)。但人人只係鬧租貴,冇人鬧人工高。因為你有機會打工,有朋友做飲食,但你多數冇朋友做收租佬。
2. 好啦,書店點解執笠?租貴咯。真係?只係書店先租貴?
3. 租貴。但何謂貴?有人交得起,咪合理,係咪?咁你見係咪加咗租冇人租?多數都唔係。但書店多數就交唔起太貴嘅租。
4. 所以,人講書店難做,係指書店比其他舖更加難捱租。否則你只係話租金高,咁點解取代你嗰間嘢交到?業主梗係唯利是圖,但總唔會特別憎臭老九,要收貴啲租。即係你交唔到,但有人交到啦。可能係金舖之類
5. 金舖呀之類你鍾唔鍾意,個人口味。哦你話「金舖影響市容社會需要書店」。咁你幫襯咗未?你唔幫襯,邊個交租?但你日日幫襯星巴克喎。
6. 有人話金舖錶舖賣奢侈品一百幾廿萬一單,梗係易交租。頂多啱一半。先唔講點解書唔可以賣貴。但收入係單價X量。星巴克一樣交得起貴租,甚至有啲快餐店都交得起租,單價一定平過賣書。但夠多人嘛。
7. 講量應該簡單啲。香港有幾多人買書呢?大家心照。況且,仲要好多人係經網上買。所以實體書店當然做唔住。
8. 而雖然網購方便,甚至平啲,但有啲體驗都係暫時未取代到嘅。至少餐廳就係(疫情後另計)。仲有名牌嘢都係。書?就唔係
9. 亦因為咁,你咪見書店轉去賣第啲嘢咯。誠品嘛,分租畀人賣下奶茶賣下文具咪得。咪交到租(雖然誠品都唔太好賺)。仲有樣嘢,點解啲奶茶要在誠品賣?我自己租唔得?做乜要分租誠品?就係因為誠品帶動成個氣場,飲杯嘢都型啲,同埋啲文青肯洗錢。呢個差不多係唯一一個賺到錢嘅方法。當然你可以有啲細細書店小本經營自己舖自己做埋員工咪得,但你只係唔計個市值租金(同埋你自己市值人工)。
10. 買書本身,實體店就冇乜「功能」的。N咁多人都係入去拎本書打張卡就走。比較有良心嘅,就好似HMV咁,入去睇完聽完—然後上網買。所以去書店買實體書呢個量,極之難谷。你有乜嘢必定要在個舖度完成?就係拎起本書打張卡。
11. 相比於網上買,實體店有乜優勝?呢個亦係你會唔會畀網上購物取代嘅關鍵。我去買化妝品,有人會同我傾計,我去腦場買嘢,可以問啲毒L意見。我去書店,你覺得有乜得著?好多大書店嘅員工,根本係對自己賣嘅嘢一無所知。幾時有尊重過自己賣嘅嘢?我去佐丹奴,姐姐仔會知道舖頭賣嘅嘢。但我去書店,係個個十問九唔知叫你自己睇電腦有就有冇就冇的。以前甚至幫你查都懶。咁我去嚟做乜?更加唔好講要你推介
12. 對,仲有一種玩法,賣個性,類似客製化,或者小店風情。即係樓下檔嘢味道麻麻,但個老細日日同你吹水,你覺得好親切。或者小型嘅唱片舖咁,呀店主可能好有品味,講得出李克勤唱《大會堂演奏廳》邊個版本好,知道《誰明浪子心》唔好聽合唱版。呢啲店亦係啲文青電影嘅主題。現實?都未必唔得,以前嘅二樓書店勉強做到。N年前呀舒琪(再講一次唔係剝衫或者KIKI麵嗰個)在灣仔間碟舖都係咁,啲戲佢自己貼埋評語添。
13. 問題係,呢啲先係最面對互聯網挑戰。呢個年代冇嘢多,網友多,屎眼多。而古語有云,“Opinions are like assholes, everyone has one but they think each other’s stink.”。你求其用一秒時間,每一套戲,每一本書,都有N咁多人評論。而呢個偏偏係一個唔信專家嘅年代。咩呀,舒琪好撚叻呀?你拍戲叻過路蘭呀?肥仔你好叻呀?CFA好叻呀?我啲網友明明唔係咁講。所以,你舒琪啲意見,值幾錢?(**)
14. 所以,唔好迷信咩「金錶一條幾錢」「一日要賣幾多本書先夠交租」—奶粉賣好貴咩(冇買過,唔知)?就當奶粉好貴,咁賣漢堡包唔貴啦掛,賣星巴克屎水唔貴啦掛,人地夠「一日賣好多杯咖啡夠交租」。根本賣書嘅量就唔大。因為真係冇咁多人會買實體書,仲要扣埋網上買嘅。開書店嘅自己知,買書嘅,有幾多人?
15. 講完量,再講單價。呢個亦係最有趣嘅地方。再講一次,收入=量X單價。麥當勞星巴克就有量。但冇量?咪單價貴咯,食水深咯。珠寶店咪咁,呢,之前咩B&O都係咁。
16. 但大家都知,書係賣唔到貴嘅。留意完全同咩成本無關。長大啦,星巴克啲粉你估好貴?啲乜乜名牌衫,「成本」幾多?去非洲剝企鵝皮做?哦你計埋個設計師份糧?咁你不如本書計埋作者份糧丫
17. 個世界唔係咁運作,個客肯畀幾錢,你就可以收到幾錢。就係咁簡單。當然點樣令個客心甘情願畀好多錢,就係學問。但簡單答你,書,係賣唔到高價嘅。包裝一下,餐聽可以由幾百蚊賣到幾千蚊。但書唔得,正常人唔會幾千蚊買本書。
18. 原因?唔好話「反智」咁cynic.但至少,因為我地絶大多數人根本唔重視書本。承認吧,甚至好多愛書人,都係如此。書冇你想像中咁值錢,亦都冇得差異化。你好難因為裝修靚啲賣貴啲,因為你本書唔係在嗰度睇(所以咪要星巴克化)。
19. 證據?我是好現實的。你好鍾意書丫嘛。嚟啦喎,舊年用咗幾多錢買書?實體書!書店買!
20. 你當然可以屌我古老石山,而家點解一定要實體書?就算實體書我都可以上網買。係丫,我都係咁。但,我地而家講實體書店嘛。
21. 所以你自己可以計下,你用幾多錢去買實體書?唔好呃自己,寫低。
22. 之後你諗下,你過去咁多年,用咗幾多錢去旅行。食咗幾多咩米芝蓮。飲咗幾多杯乜乜奶茶。計下溝唔到嘅女用咗你幾錢。買六合彩用咗幾錢。然後你咪知,你有幾重視書。你咪知點解書加唔到價。
23. 事實係咁,因為,書唔係一種好有炫耀性嘅東西。或者話,你根本唔需要睇完本書,就可以得到佢大量嘅Utility —你想打個卡?入去拎起佢打卡走人。你想扮有睇過?網上大把書評有得你抄。所以,邊使買書?
24. 至於你話睇完晒書本入面得到嘅知識?Sorry,係唔值錢的。
25. 我知睇書係好快樂—但只係對某啲人(例如我)而言。唔係大眾嘅選擇(亦唔係三聯嘅選擇)。而即使你有呢啲咁另類似癖好(類似想玩制服咁)—咁你肯加幾多錢?係冇幾多的。至少我唔使買實體。
26. 所以返到尾,就係實體書店根本創唔到價值—但其他實體舖就可以。
27. 即使唔講實體書店,講書in general ,我都覺得係前景黯淡的。原因亦都係互聯網。但我唔係指亞馬遜搶生意咁簡單—我係指根本亞馬遜上買書嘅人都越嚟越少。
28. 原因係因為替代。因為互聯網。而家有乜嘢,你係要睇咗本書先知?其實近乎係冇嘅。你要知嘅知識,好易可以搵到,特別係好多人根本連內容農場同真知識都未識分。即使你真係知道,喂,呢本書好正喎—都有大量「圖書谷阿莫」,話畀你知,本書係講乜。太多免費嘅替代啦。
29. 有人話睇書多嘅人,講嘢寫嘢都唔同啲。我就當你去做KOL寫啲文都好啲。真係?我覺得唔係。你可以睇下乜嘢KOL多人睇,然後睇下同佢睇幾多書,有乜相關性。我好肯定你搵個靚仔靚女嚟,每日除衫拍片,反應一定好過佢睇晒成套柏楊版資治通鑑。
30. 未來其實好簡單,就係「睇書」呢樣嘢會被淘汰—但唔係完全,睇書會變咗某啲人嘅特定技能,你唔識冇大損失,你畀錢呢啲人,自己時間去做更有意義嘅嘢。等於兩百年前,個個識自己造衫,後來就出街買啦。疫情之情,其實都有人講話一百年後就冇乜人再識煮嘢,個個出街食。
31. 所以未來個趨勢應該係,睇書變成好似竹昇麵呀之類嘅技能。只有啲精通而又窮嘅人先會去做。其他人,咪幫襯呢啲人。返返去以前街頭講故咁:諸位,我地今日講《埃汾李的思考藝術》。上回講到,長洲賓客人數多(日本故事掛),今回開講,惠康聖誕大特賣—卻說辰衝執笠後……欲知後事如何?記得課金。
(*)我其實一路都唔明呢個邏輯在邊,如果正規原教旨經濟人更加係R爆頭。OK業主無良想賺到盡—咁唔通你未拎米芝蓮佢就唔係無良?佢當時就唔係想賺到盡?
(**)其實舒琪應該唔會睇到,但佢出名串,都澄清返。唔係佢評論冇價值,相反,係好有價值。問題係,而家啲人唔會識分呢啲價值。我地嘅教育,培養出一大班識字嘅文盲 — 最可愛係,佢地一樣認為我係文盲。乜撚嘢呀?有Facebook Page好叻呀?都唔知你寫乜。CFA好叻呀?發達未?星展好叻呀?陸東先係有料到。
————————————————————————————————
最新收費影片:第一次推介跑贏大市,同你回顧檢討下。仲有新推介。40分鐘,都係賣返$80
簡介及以前嘅片(未睇可訂):https://bit.ly/3iYMD0F
報名嘅,課程編號CC006:https://bit.ly/3eXVX1K
報完名交咗錢,呢度log in:https://bit.ly/3gYXu9e
之後按最頂「按此觀看」就得
仲搞唔掂嘅,睇埋下面,或者搵客服,或者PM我。
-------------------------------------------------------------------------------
【最新李聲揚收費影片】題目: 回顧第一段專欄片有幾勁!今段落多幾個Number賺死你!40分鐘,都係賣返$80
影片/課程編號:CC006
播放平台:https://homebloggerhk.com/web-class-player/
付款及收看步驟:
1/點擊報名收看 [影片/課程編號:CC006]
2/利用信用卡網上付款
3/及後有登入資料可以立即收看
查詢:whatsapp 63832145
r字串取代 在 6 資料處理與清洗| 資料科學與R語言 的推薦與評價
在資料型態章節Chapter 1.5中,曾介紹數值(numeric)、字串(character)、布林 ... 在所有的程式語言中,只要用到字串比對與字串取代等字串相關功能,都會用到正規表示式 ... ... <看更多>
r字串取代 在 CGMH_R/01BasicRandDataImport.md at master - GitHub 的推薦與評價
CGMH R資料分析三部曲與醫學資料進階分析課程. ... 資料型態. 數值(numeric); 字串(character); 布林變數(logic); 日期(Date) ... 基本處理-文字取代(多字元)|. ... <看更多>
r字串取代 在 [程式] R的字串處理- 看板Statistics 的推薦與評價
[軟體程式類別]:
R
[程式問題]:
資料處理
[軟體熟悉度]:
中(3個月到1年)
[問題敘述]:
最近常在處理字串
發現自己會的 function 很不夠用
想多學點 function
我列出一些我常用的
希望能拋磚引玉
請各位高手能教我一些高招
[程式範例]:
前言 :
R 的字串處理 ,
要小心注意 character , factor , numeric 這三種物件的誤轉換和混用
factor 是一種很討厭的物件 ,
因為它在轉成數字和字串的時候 ,
常常會變成跟原本不一樣的東西 ,
建議資料處理的過程 ,
預設用 matrix 和 character 兩種而避免使用 data.frame
------------------------------------------------------------------
1.字串黏合
paste ("A","B",sep="") ---->>> "AB"
2.字串切割
strsplit("A.B",split=".",fixed=T) ---->>> "A" "B"
3.精確穩合
x <- c("AB","AA")
x %in% "AB" ---->>> TRUE FALSE
4.部份吻合 + (回傳 which)
x <- c("AB","AA")
grep("B",x) ---->>> 1
grep("A",x) ---->>> 1 2
grep("B",x,value=T) ---->>> "AB"
grep("B",x,value=T,invert=T) ---->>> "AA"
grep("C",x) ---->>> integer(0)
#若目的是要找 index , 建議改用 grepl
4-2.部份吻合 + (回傳判斷式)
x <- c("AB","AA")
grepl("B",x) ---->>> TRUE FALSE
4-3.部份吻合 + (回傳位置) + (回傳??)
x <- c("BBB","AAA","CCB")
regexpr("B",x) ---->>> 1 -1 3 (第一次 "hit" 的位置)
1 -1 1 (有無 "hit")
5.子字串
substr("human123456",start=1,stop=5) ---->>> "human"
!!注意!! 4-3 的 regexpr
與這個 substr 結合起來 ,
在寫 網頁Parser 的時候很好用
regexpr 能定義出 statr=多少
所謂的網頁Parser
就是你去下載某些 html 檔案
檢視原始碼
然後找出你需要的資料
再找出一些能 cut 的規則
用 strsplit 搭配 TR , TD 之類的字串去切出你要的資料
6.特定字元取代 (1st hit)
x <- "AABB"
sub("A",replacement="C",x) ---->>> "CABB"
6-2.全部特定字元取代 (global hit)
x <- "AABB"
gsub("A",replacement="C",x) ---->>> "CCBB"
7.計算字串長度
### 盡量別用這個 fuction
x <- c("A","AAA","AAAAA")
nchar(x) ---->>> 1 3 5
nchar(as.factor(x)) ---->>> 1 1 1
8.多重字元(串)貼合 (矩陣內)
x <- matrix(letters[1:6],2,3)
apply(x,1,paste,collapse="") ---->>> "ace","bdf"
apply(x,2,paste,collapse="") ---->>> "abc","def"
9. 字元反轉
x <- c("A B","*.")
sapply(lapply(strsplit(as.character(x), NULL), rev), paste, collapse="")
[1] "B A" ".*"
10.字元檢查
x <- c("A B","*.")
unique(unlist(strsplit(as.character(x),split="",fixed=T)))
[1] "A" " " "B" "*" "."
-----------------------------------------------------------
Regular expression : 字串模糊比對 , 或特定字母排列模式的抓取
在R內
基本上分成3種
Basic regular expression (BRE) --> extended = FALSE
Extended regularexpression (ERE) --> extended = TRUE (預設)
perl-like (perl) --> perl = TRUE
雙冒號代表我測試過且成功
單冒號代表網路上抓下來或是測試失敗
--------------------------------------------------------------
通用部分
{,}
* :: {0, } 至少出現0次, 最多無限多次
+ :: {1, } 1 無限多次
? :: {0,1} 0 1
[Aa] :: A 或 a
[^1-9] :: not 1:9
[1-9] :: 1:9
[a-z] :: a b c ... z
[A-Z] :: A B C ... Z
[a-zA-Z] :: 所有英文字母
[W-z] :: WXYZabc....z
[w-Z] :: 不可使用!
(AB) :: 括號一次收集多個字元 ### 一種延伸字串的寫法
舉例 :
x <- c("company","companies",)
可以用以下兩種寫法
1. grep("[company|companies]",x)
2. grep("compan(y|ies)",x)
第二種在大資料的時候會比較快
$ :: 字尾限定
^ :: 字首限定
| :: "ABC|EFG" --> grep("ABC"or"DEF",x)
. :: 任意字元
-----------------------------------------------------
ERE , extended = TRUE
digit (數字)
\\d :: [0-9]
\\D :: [^0-9]
[[:digit:]] :: 同上
[^[:digit:]] :: 同上
blank (空白)
\\s :: 能切開 " " 或 "\t"
\\S :: 切開非空白及 tab 的字元
[[:blank:]] :: 同上
[^[:blank:]] :: 同上
AlphaBet + Digit (正常字元)
\\w :: [0-9a-zA-Z]
\\W :: [^0-9a-zA-Z]
[[:alnum:]] :: 同上
[^[:alnum:]] :: 同上
AlphaBet (英文字元)
[[:alpha:]] :: 同上
[^[:alpha:]] :: 同上
特殊符號
[[:punct:]] :: ! " # $ % & ' ( ) * + , - .
/ : ; < = > ? @ [ \ ] ^ _ ` { | } ~
[^[:punct:]] :: 英文字 , 數字 (注意! , \t 和 \n 都會被切掉)
注意 ! 正斜線這個符號很容易與其他 regular expr 混淆
必須仔細檢查 "\" 存在的字串
可印符號
[[:print]] :: 所有字元 (數字,字母,特殊符號,空白)
\n , \t , \001 除外
16進位字元
[[:xdigit:]] :: 16進位有關英文或數字
[0-9a-fA-F]
大小寫英文字元
[[:upper:]] :: 大寫英文字元 [A-Z]
[^[:upper:]] :: 非大寫 [^A-Z]
[[:lower:]] :: 小寫 [a-z]
[^[:lower:]] :: ^[a-z]
注意 "\t" 還是會被留下來
空白和換行等
[[:space:]] :: " " , \t , \n , \f , \r
(\f : 換行但不回到行頭)
(\r : 回到行頭並消除此行內所有的文字)
P.S. 這兩種不常用,當豆知識即可
[[:graph:]] :: [A-Za-z0-9]再加[["punct"]]
----------------------------------------------------------
perl = TRUE
\\w : [A-Za-z0-9_]
\\W : [^A-Za-z0-9_]
\\s : [\t\n\r\f]
\\S : [^\t\n\r\f]
\\d : [0-9]
\\D : [^0-9]
----------------------------------------------------------
regular expression 工事中 (未完)
感覺這篇被我當筆記來用了
reference:
1. https://www.rtfiber.com.tw/~changyj/
2. https://www.stat.psu.edu/~dhunter/R/html/base/html/regex.html
----------------------------------------------------------
大小寫切換
TRUTH <- c("Abc","ABC")
a <- gsub("(\\w)","\\L\\1",TRUTH,perl=TRUE) ---> "abc","abc"
b <- gsub("^(\\w)","\\U\\1",a,perl=TRUE) ---> "Abc","Abc"
同上 , 非常神秘的 Bug !?
T123 <- c("Tgfbr1","Cd320","Ndrg3","Aldoa","Bckdk","Tmed3","Hfe2")
> gsub( "(\\w)", "\\L\\1" , T123 , perl=T)
[1] "LTLgLfLbLrL1" "LCLdL3L2L0" "LNLdLrLgL3"
[4] "LALlLdLoLa" "LBLcLkLdLk" "LTLmLeLdL3"
[7] "LHLfLeL2"
> gsub( "(\\w)", "\\L\\1" , T123 , perl=TRUE)
[1] "tgfbr1" "cd320" "ndrg3" "aldoa" "bckdk" "tmed3"
[7] "hfe2"
---------------------------------------
消除多餘空白
> x <- "Hey! Apple "
> gsub(" {2,}","",x)
[1] "Hey! Apple" ### 容忍一個空白 , 但兩個以上至無限大則消除
---------------------------------------
在處理混合字串與數字的資料矩陣的時候
常常需要在 data.frame 和 matrix 之間切換
有時候會字串會被一些預設的空白字元夾住
ex:
"1" , "15" , "333"
經過轉換以後
" 1" , " 15" , "333" (fit 最長字串的長度)
> DATA <- gsub("^ *| *$",as.matrix(DATA))
---------------------------------------
### 一些參考的 pattern
1. "^\\d+$" ### 純數字的欄位 ###
2. "^ *| *$" ### 字首字尾的空白(搭配 gsub) ###
3. "^[0][\\.]{0,1}[0]*$" ### "0" "0.0" "0.00" "0.000" "0.0000" ,
bug 是 "0." "00"
####################################################################
放一些 linux 下的好用指令
光用 R 來做字串處理不夠用
原因在於若處理的檔案太大
光是讀進 R 就累死人
這邊主要是應用在檔案減肥
文字檔案
rs123\t0|1:0000\tAAAA
rs456\t1|0:0000\tBBBB
###################
橫向
grep [-w : word]
[-f : 給 pattern file]
[-F : 精確比對] ### 若要搜尋固定字串 , -F必下 (快超多)
1. cat 文字檔案|grep -w 'rs' ### 沒東西
2. cat 文字檔案|grep -w -F 'rs123' ### 出第一行
3. car 文字檔案|grep -w '^rs.*$' ### 二行皆出
###################
縱向
cut [-d : 用tab切開會是3個column的矩陣]
1. cut -d'\t' -f1,2 原檔 > 新檔 ### 留下 1 and 2 columns
###################
橫向
sed
1. sed -n '6,$p' 原檔 > 新檔 ### 從第六行開始 , print 至尾行
### 或可理解成, 把 1~5行切掉
2. sed 's/:\S*/HAHA/g' 原檔 > 新檔 ### s=取代 , g=global
### 把紅色的正規 pattern 取代成綠色
###################
當檔案有 10000000 rows , 讀不進 R 怎辦?
就算讀進 R , 資料太大一直 SWAP 電腦動不了怎麼辦?
經過一番苦戰
我建議以下的思考方式
0. 先透過上述方式
直接在終端機把檔案減肥
1. 檔案列數 <- system("wc -l 檔案",intern=TRUE)
LOOP <- ceiling(檔案列數 / 5000)
for(g in 1:LOOP) ### 用while可省前兩行
{ tmp <- read.table(檔案,skip=5000*(g-1),nrow=5000) ### 但我只熟 for
expr(中間的各種處理)
write.table(tmp,g)
Sys.sleep(5) ### 給一點時間讓電腦回氣
}
2. system("cat 小檔案1 小檔案2 小檔案3 .... > 總檔案") ### 檔案 rbind()
雖然不是最快的方法
但 Over night 是一定可以把檔案處理完的
以上
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.239.247
※ 編輯: gsuper 來自: 140.113.239.247 (07/02 22:21)
※ 編輯: gsuper 來自: 140.113.239.247 (07/02 22:22)
※ 編輯: gsuper 來自: 140.113.239.247 (07/02 22:48)
※ 編輯: gsuper 來自: 140.113.239.247 (07/02 23:12)
※ 編輯: gsuper 來自: 140.113.239.247 (07/02 23:30)
※ 編輯: gsuper 來自: 140.113.177.3 (07/03 01:41)
※ 編輯: gsuper 來自: 140.113.177.3 (07/03 03:12)
※ 編輯: gsuper 來自: 140.113.239.247 (07/03 21:39)
※ 編輯: gsuper 來自: 140.113.239.247 (07/08 10:32)
※ 編輯: gsuper 來自: 140.113.239.247 (07/08 17:19)
※ 編輯: gsuper 來自: 140.113.239.247 (07/08 17:28)
※ 編輯: gsuper 來自: 140.113.239.247 (08/03 22:45)
※ 編輯: gsuper 來自: 140.113.239.247 (08/03 22:47)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 21:49)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 21:55)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 22:02)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 22:03)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 22:19)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 23:10)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 23:35)
※ 編輯: gsuper 來自: 140.113.239.247 (09/03 23:44)
※ 編輯: gsuper 來自: 140.113.239.247 (09/21 22:26)
※ 編輯: gsuper 來自: 140.113.239.247 (09/21 22:54)
※ 編輯: gsuper 來自: 140.113.239.247 (09/29 13:26)
※ 編輯: gsuper 來自: 140.113.239.247 (10/04 13:54)
※ 編輯: gsuper 來自: 140.113.239.247 (10/04 14:02)
※ 編輯: gsuper 來自: 140.113.239.247 (12/03 17:13)
※ 編輯: gsuper 來自: 140.113.56.120 (12/21 02:15)
※ 編輯: gsuper 來自: 140.113.56.120 (12/29 03:27)
※ 編輯: gsuper 來自: 140.113.56.120 (12/29 03:28)
※ 編輯: gsuper 來自: 140.113.239.247 (02/17 16:33)
※ 編輯: gsuper 來自: 140.113.239.247 (02/21 12:43)
※ 編輯: gsuper 來自: 140.113.239.247 (06/12 19:52)
※ 編輯: gsuper 來自: 140.113.239.247 (06/12 19:52)
※ 編輯: gsuper 來自: 140.113.239.247 (11/09 14:28)
※ 編輯: gsuper 來自: 140.113.239.247 (11/09 14:32)
※ 編輯: gsuper 來自: 140.113.239.247 (11/09 18:58)
※ 編輯: gsuper 來自: 140.113.239.247 (11/09 19:03)
※ gsuper:轉錄至看板 R_Language 03/30 20:33
... <看更多>
相關內容