บรรทัดโปรดของรหัส Python

ใช่ฉันมีโค้ด Python 'รายการโปรด' เพราะมีบางสิ่งที่ฉันทำบ่อยๆ (ทั้งในคำพูดและชีวิตการศึกษาของฉัน) ซึ่งความสง่างามของมันไม่เพียงช่วยประหยัดเวลา แต่ยังทำสิ่งที่ฉันต้องการ

Pandas DataFrames เป็นวิธีที่ดีอย่างยิ่งในการจัดการข้อมูลแบบตารางใน Python บ่อยครั้งในวิทยาศาสตร์ข้อมูลข้อมูลจะถูกจัดการ - ไม่ใช่แค่ค่าเดียวหรือสองค่า แต่ทุกค่าในคอลัมน์อย่างน้อยหนึ่งคอลัมน์ ตัวอย่างเช่นเมื่อทำการแก้ไข

นั่นคือที่มาของรหัสบรรทัดโปรดของฉัน

นี่คือตัวอย่างของข้อมูลที่ไม่ดี:

ฉันจะเริ่มต้นด้วยmakeคอลัมน์ ค่าในนั้นไม่สอดคล้องกันและฉันต้องทำให้makeค่าเริ่มต้นทั้งหมดเป็นตัวพิมพ์ใหญ่ โดยไม่ต้องกังวลใจอีกต่อไปนี่คือบรรทัดรหัสที่ฉันชอบ (สมมติว่าข้อมูลถูกโหลดใน DataFrame ชื่อmy_data_df:

my_data_df[‘make’] = my_data_df[‘make’].apply(lambda x: x.title())

ดูดีและได้รับการแก้ไขทั้งหมด

สรุปสิ่งนี้ลงเล็กน้อยสิ่งที่ฉันทำคือใช้applyฟังก์ชั่นDataFrame เพื่อวนซ้ำตามแต่ละค่าในคอลัมน์ที่ระบุ ( make) และสำหรับแต่ละเซลล์ฉันใช้ฟังก์ชันสตริงแบบง่าย ( title) เพื่อแปลงค่านั้นเป็นตัวพิมพ์ใหญ่ของชื่อเรื่อง (ขีด จำกัด เริ่มต้น) ในlambdaฟังก์ชันxคือค่าที่ฉันกำลังเปลี่ยนแปลง

การขยายฟังก์ชันการทำงาน

อีกสิ่งหนึ่งที่ทำให้เป็นโค้ดโปรดของฉันก็คือมันเป็นบรรทัดอเนกประสงค์ซึ่งสามารถขยายได้และเป็นแบบทั่วไป ตัวอย่างสุดท้ายนั้นไม่ได้ทำอย่างถูกต้องทั้งหมดใช่ไหม BMW เป็นจุดเริ่มต้นของ Bayerische Motoren Werke และไม่ควรเป็นตัวพิมพ์ใหญ่ แต่ครอบคลุมทั้งหมด

ฉันสามารถใช้รหัสบรรทัดโปรดของฉันได้หรือไม่? โอ้ใช่ฉันทำได้

my_data_df[‘make’] = my_data_df[‘make’].apply(lambda x: x.title() if x != ‘bmw’ else x.upper())

สิ่งที่ฉันทำคือขยายlambdaฟังก์ชันเดิมโดยการเพิ่มif else clauseเพื่อจัดการ BMW ระบุอย่างชัดเจนบรรทัดของรหัสตอนนี้กล่าวว่า:

สำหรับแถวมากในmakeคอลัมน์ให้แปลงเป็นชื่อเรื่องถ้าค่าไม่ใช่bmwหรือให้เป็นตัวพิมพ์ใหญ่ทั้งหมด

ไม่เลวสำหรับโค้ดบรรทัดเดียว

สรุปรหัส

อย่างที่บอกตอนเริ่มมีอาการฉันใช้โค้ดบรรทัดนี้ (หรือรูปแบบบางอย่างในนั้น) บ่อยมาก ในทางปฏิบัติฉันไม่ได้เขียนซ้ำทุกครั้งเพื่อความสนุกเท่าที่ควร ฉันปรับรูปแบบทั่วไปโดยใช้ฟังก์ชัน Python แทน ดูที่dayคอลัมน์วันในสัปดาห์ไม่สอดคล้องกันและฉันต้องการให้วันทั้งหมดเป็นวันที่สะกดเต็มในกรณีชื่อเรื่อง แต่โดยทั่วไปแล้วฉันมีคำที่“ ผิด” อย่างน้อยหนึ่งคำที่ฉันต้องการทำให้“ ถูก” ตอนนี้บรรทัดเดียวของรหัสที่จะเปลี่ยนหนึ่งในสถานการณ์เหล่านี้พูดwedไปWednesdayก็เพียงพอง่าย:

my_data_df[‘day’] = my_data_df[‘day’].apply(lambda x: ‘Wednesday’ if x == ‘wed’ else x.title())

เช่นเดียวกับตัวอย่างที่แล้วฉันใส่เงื่อนไขในlamdaฟังก์ชัน แต่คราวนี้ฉันเพิ่งตรวจสอบว่าค่าเป็นwedและถ้าเป็นเช่นนั้นให้เปลี่ยนเป็นWednesdayมิฉะนั้นเพียงแค่ทำให้เป็นค่าเริ่มต้น ( else x.title())

เป็นเรื่องดี แต่มีการเปลี่ยนแปลงมากกว่าหนึ่งรายการและฉันต้องการสร้างฟังก์ชันที่สามารถเปลี่ยนคำใด ๆ เป็นคำอื่นได้

เห็นได้ชัดว่ารหัสนี้ไม่รวมบรรทัดโปรดของฉัน แต่จะใช้กับบรรทัดโปรดของฉัน correct_wordฟังก์ชั่นฟังก์ชั่นทั่วไปที่แปลงแรกxพิมพ์ชื่อเรื่องแล้วถ้าxเป็นคำที่ผิดก็กลับคำที่เหมาะสม (ในการทำสาระสำคัญ x คำที่เหมาะสม) มิฉะนั้นก็จะส่งกลับ x (คุณไม่ต้องการเปลี่ยนคำเว้นแต่จะเป็นคำที่ผิด) หากฉันเริ่มต้นใหม่ทั้งหมดอีกครั้งด้วยข้อมูลเดิมตอนนี้ฉันสามารถเปลี่ยนทุกอย่างได้อย่างง่ายดาย

สังเกตว่าlambdaฟังก์ชันนี้เรียกcorrect_wordใช้ฟังก์ชันที่กำหนดเองของฉันได้อย่างไร ค่อนข้างเรียบง่าย (ฉันรู้ฉันรู้ว่านี่ไม่ใช่โค้ดบรรทัดเดียวอีกต่อไป แต่ฉันยังคงใช้บรรทัดโปรดของฉันและแสดงวิธีใช้โดยทั่วไปมากกว่า)

ฉันรู้ว่ามีบรรทัดของโค้ดที่ทรงพลังกว่าและอาจจะเย็นกว่าโค้ดบรรทัดเดียว แต่ฉันก็ไม่มีบรรทัดไหนที่ฉันชอบ อันนี้คือ. หวังว่าคุณจะชอบมัน.

Suggested posts

วิธีเรียกใช้ปลั๊กอิน ChatGPT ฟรีโดยใช้ Langchain

วิธีเรียกใช้ปลั๊กอิน ChatGPT ฟรีโดยใช้ Langchain

คุณต้องเคยได้ยินเกี่ยวกับปลั๊กอิน ChatGPT อันทรงพลังใหม่ทั้งหมด เช่น เบราว์เซอร์ ตัวแปลรหัส ฯลฯ แต่มีปัญหา การเข้าถึงปลั๊กอินถูกจำกัดไว้เฉพาะรายการรอ และหลายคนไม่สามารถเข้าถึงได้

ทรัพยากรการเข้ารหัสที่ฉันใช้มากที่สุด

ทรัพยากรการเข้ารหัสที่ฉันใช้มากที่สุด

สัปดาห์นี้ ฉันได้รับอีเมลจากสมาชิกรายการอีเมลรายวัน พวกเขาต้องการทราบ: คุณเข้าชมแหล่งข้อมูลใดรายวัน รายสัปดาห์ และรายเดือน คำถามที่ดี! ฉันยินดีที่จะพยายามแบ่งปันข้อมูลเชิงลึกเกี่ยวกับเวิร์กโฟลว์และทรัพยากรยอดนิยมที่ฉันใช้

Related posts

สองปีในการออกแบบ - ดี ไม่ดี และน่าเกลียด...

สองปีในการออกแบบ - ดี ไม่ดี และน่าเกลียด...

“หวัดดี Siri เล่น Me Dive โดย Olivia Dean” ในเดือนพฤษภาคม 2021 ฉันเริ่มฝึกงานที่ Future Academy Africa ในเมือง Akure ประเทศไนจีเรีย

ศิลปะเคยไม่ฝักใฝ่ฝ่ายใดหรือไม่?

ศิลปะเคยไม่ฝักใฝ่ฝ่ายใดหรือไม่?

เมื่อวานนี้ เราปิดการแข่งขัน Eurovision Song Contest ปีนี้ด้วยตอนจบที่สดใสและวุ่นวาย โดย Loreen นักร้องชาวสวีเดนคว้าถ้วยรางวัลกลับบ้าน กลายเป็นผู้หญิงคนแรกที่ชนะสองครั้งและนำมงกุฎกลับมายังสวีเดน 50 ปีหลังจาก ABBA ชนะการแข่งขัน กับ “วอเตอร์ลู” พวกเขากลายเป็นหนึ่งในการแสดงที่ยิ่งใหญ่ที่สุดในวงการเพลงป๊อป

ไม่มีรหัสผ่านอีกต่อไป — รหัสผ่านจะมาแทนที่รหัสผ่านของคุณได้อย่างไร

ไม่มีรหัสผ่านอีกต่อไป — รหัสผ่านจะมาแทนที่รหัสผ่านของคุณได้อย่างไร

เพื่อหลีกเลี่ยงความกำกวม เราจะใช้คำศัพท์ต่อไปนี้ ผู้รับรองความถูกต้อง; โทรศัพท์มือถือที่ใช้ในการเข้าสู่ระบบเว็บไซต์; เว็บไซต์หรือแอปพลิเคชันที่ผู้ใช้ใช้เพื่อส่งคำขอเข้าสู่ระบบ ผู้ขายที่ให้บริการเช่น

ทบทวนสื่อ: ความจริง 5 ประการของ McChesney และอนาคตของการสื่อสาร

ในโลกปัจจุบันที่เชื่อมต่อกันมากเกินไป ระบบสื่อมีบทบาทสำคัญในการกำหนดความคิดเห็นของสาธารณชน และเป็นผลให้เกิดขึ้นในการตัดสินใจตามระบอบประชาธิปไตย ในการวิเคราะห์อย่างลึกซึ้งเกี่ยวกับเศรษฐศาสตร์การเมืองของการสื่อสาร นักวิชาการ Robert McChesney ท้าทายภูมิปัญญาดั้งเดิมและนำเสนอสิ่งที่เขาเรียกว่า "ความจริงห้าประการ" เกี่ยวกับสื่อ