من چند وقت پیش چند تا از دکمه های کیبورد لپ تاپم خراب شده بود و کلید های مهمی هم بودند و عملا کد نویسیم رو مختل کرده بود. البته بلافاصله یه کیبورد گرفتم ولی همون لحظه این سوال برام پیش اومد که پر تکرار ترین کاراکتر های کیبورد برای زبان های برنامه نویسی مختلف چیه؟
در مرحله اول باید منبع خوبی از سورس کد پیدا میکردم که به دیتاست زیر رسیدم :
https://huggingface.co/datasets/bigcode/the-stack
این دیتاست حجم عظیمی از کد های زبان های برنامه نویی مختلف رو داره :
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/the-stack-infographic-v111-1024x748.png)
کاری که انجام دادم صرفا یه پردازش کاراکتر به کاراکتر ساده است
یه اسکریپت پایتون نوشتم که تعداد تکرار هر کاراکتر رو در کد ها بشمره. از هر زبان برنامه نویسی فقط 1 میلیون فایل رو انتخاب کردم و به نظرم تعدادش مناسبه و حتی زیاد هم هست!
این عکس رو برای زبان های مختلف به ترتیب مینویسم. توی این تصاویر tab و space با هم ادغام شده و دکمه shift هم برای تایپ کاراکتر های خاص و حروف بزرگ استفاده میشه. تصاویر زیر داره حروف پر تکرار رو نشون میده و دکمه هایی که سبز نیستند به این معنی نیست که استفاده نمیشدند.
پایتون
ترتیب کاراکتر های پر تکرار : etsarionl
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/python.png)
سی پلاس پلاس
ترتیب کاراکتر های پر تکرار : etirnaos
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/c.png)
سی
ترتیب کاراکتر های پر تکرار : etinr_a
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/c-1.png)
جاوا اسکریپت
ترتیب کاراکتر های پر تکرار : etnraiosl
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/javascript.png)
سی شارپ
ترتیب کاراکتر های پر تکرار : etrainos
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/c-sharp.png)
گولنگ
ترتیب کاراکتر های پر تکرار : etrnioas
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/go.png)
جاوا
ترتیب کاراکتر های پر تکرار : etiranos
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/java.png)
پی اچ پی
ترتیب کاراکتر های پر تکرار : etarisonl
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/php.png)
روبی
ترتیب کاراکتر های پر تکرار : etrsanio
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/ruby.png)
راست
ترتیب کاراکتر های پر تکرار : etrsanio
![](https://vahidbaghi.ir/blog/wp-content/uploads/2023/10/rust.png)
جالب بود ??
میتونی این نتایج رو با زبان انگلیسی هم مقایسه کنی و بگی توزیع حروف کدومش به انگلیسی نزدیکتره؟ و یه مرحله بعد n-gram هارو در بیاری باهاشون همینکارو کنی. اینو ببین خیلی جالبه. من میخواستم یه زمانی با فارسی اینکارو کنم: https://ieeexplore.ieee.org/document/4338381
در کل، من از توییت هات و این مدل پروژه هات خیلی خوشم میاد. میتونی در تحلیل آماریشون یه کم عمیقتر بشی و آمار جالب تری در بیاری.
اینم ببین من نوشتم در همین باب: https://medium.com/@girraffael/network-statistical-analysis-on-my-instagram-connections-graph-c5ca91062d47?postPublishedType=repub