Patreon:
https://www.patreon.com/kfsoftDoing data science with python:
1) Array creation & data type
2) ufunc: vectorized ops
3) basic manipulation
4) broadcast: vectorized ops on arrays with different shapes
Files:
https://github.com/learn10kYear/learn-pandas/tree/master/numpy00:00 Intro
01:47 Roadmap - 4 parts 1) Create 2) ufunc 3) manipulate 4) broadcast
03:29 Packages installation
05:09 Why numpy array
08:51 Numpy vs python's list - numpy is much faster
15:55 Pt1 - Basics - ndim, shape, dtype, strides
25:47 Pt1 - Pandas & numpy: df.to_numpy(), df.values
29:04 Pt1 - Create - 9 methods
29:52 Pt1 - Create - np.array(), np.arange()
22:43 Pt1 - Create - np.zeros(), np.ones(), np.empty()
35:09 Pt1 - Create - np.full(), np.eye(), np.identity()
36:21 Pt1 - Create - np.random.random(), np.random.randint(), np.linspace()
38:14 Pt1 - dtype - data types & type codes
39:27 Pt1 - dtype - type code - i1,i2,i4,i8 (intX)
41:58 Pt1 - dtype - type code - f2,f4,f8 (floatX)
42:19 Pt1 - dtype - type code - ? (bool) & O (object)
42:37 Pt1 - dtype - type code - S (string_) & U (unicode_)
45:26 Pt1 - dtype - specify the dtype when creating array
48:58 Pt1 - dtype - changing array dtype after creating array - astype()
50:40 Pt2 - ufunc - vectorized ops
51:39 Pt2 - ufunc - np.add(), np.substract()
54:20 Pt2 - ufunc - np.multiply(), np.divide(), np.square()
56:45 Pt2 - ufunc - universal functions, element-wise computations
56:45 Pt2 - ufunc - np.maximum()
59:03 Pt2 - ufunc - np.abs(), np.square(), np.sqrt()
01:00:22 Pt2 - ufunc - np.sin(), np.cos(), plot graph
01:02:35 Pt2 - ufunc - np.greater()
01:03:19 Pt2 - aggregate functions - np.mean(), np.sum(), np.max(), etc.
01:05:16 Pt2 - reduction - np.add.reduce() = np.sum()
01:06:40 Pt2 - accumulation - np.add.accumulate() = np.cumsum()
01:07:29 Pt2 - cumulative functions - np.cumsum(), np.comprod()
01:09:24 Pt3 - manipulate - index & slice (1d examples)
01:12:22 Pt3 - manipulate - update sliced view also update the original array
01:13:12 Pt3 - manipulate - copy()
01:14:06 Pt3 - manipulate - index & slice (2d examples)
01:18:17 Pt3 - manipulate - np.newaxis, increase dimension
01:19:56 Pt3 - manipulate - boolean mask
01:26:15 Pt3 - manipulate - sorting
01:28:24 Pt3 - manipulate - fancy index
01:29:41 Pt3 - manipulate - transpose - arr.T, arr.swapaxes()
01:30:39 Pt3 - manipulate - concatenate(axis=0), vstack(), row_stack()
01:33:16 Pt3 - manipulate - concatenate(axis=1), hstack(), column_stack()
01:34:32 Pt3 - manipulate - np.split()
01:38:57 Pt3 - manipulate - stack helpers - np.r_, np.c_
01:47:55 Pt3 - manipulate - File I/O - np.save(), np.savez_compressed(), np.load()
01:54:45 Pt3 - linear algebra - np.dot(), np.linalg.det(), np.linalg.inv()
01:56:32 Pt3 - linear algebra - np.diag(), np.linalg.solve()
01:58:17 Pt4 - broadcast - doing arithmetics with arrays in different shapes
02:01:39 Pt4 - broadcast - arrays in same size example - element-wise computations
02:03:02 Pt4 - broadcast - CASE 1: array and a scalar example - element-wise computations after stretching
02:07:16 Pt4 - broadcast - CASE 2: arrays in different shapes example - BROADCAST RULE - match trailing axes (1 or equal), PASS - expand and do vectorized ops
02:14:02 Pt4 - broadcast - CASE 2: BROADCAST RULE check fail - incompatible (value error)
02:15:29 Pt4 - broadcast - CASE 2: arrays in different shapes example - both arrays need stretching
02:21:15 Pt4 - broadcast - CASE 2: stretching is conceptual only, numpy don't do this in your main memory
02:25:24 Pt4 - broadcast - try more examples listed in numpy offical website
02:31:07 Summary & conclusion
Python入門:第1課 - PyCharm + Data Types
https://youtu.be/s9toTBXQSPEPython入門:第2課 - Python containers (1): List, Tuple
https://youtu.be/7hm0zHgEGZ4Python入門:第3課 - Python containers (2): Dictionary & Set
https://youtu.be/7Jvfd6qFLzUPython入門:第4課 - If-Else, Looping, Try-except
https://youtu.be/sXdh5L5rcX0Python入門:第5課 - Function + File
https://youtu.be/rk8kU3no5NoPython入門:第6課 - Class and Object
https://youtu.be/HPb0Lg3FQfMPython入門:第7課 - URL, JSON, Sqlite
https://youtu.be/93lOZTxJtrsPython入門:第8課 - 用Flask進行Web開發
https://youtu.be/Z4CR3rwVkGcPython入門:第9課 - Flask + DB ORM
https://youtu.be/ZQoBdEH1zowPython入門:第10課 - Flask補充1
https://youtu.be/AC23QWvFNWIPython入門:第11課 - Flask補充2
https://youtu.be/-PkZ8sGhm-UPython入門 - 數據科學 - Jupyter Lab & Notebook 安裝+入門教程
https://youtu.be/niWD8kxgpH0Python入門 - 數據科學 - Anaconda + PyCharm 安裝
https://youtu.be/H4ihRvtdY7MPython初級 - 數據科學 - Numpy入門
https://youtu.be/t7ygnafk760Python初級 - 數據科學 - Pandas入門
https://youtu.be/ZYjhM7J9eFQPython初級 - 數據科學 - Pandas時間 + 圖表
https://youtu.be/jrd8shHEVFQPython初級 - 數據科學 - Pandas類別 + 樣式
https://youtu.be/4ntwbAWnKbgPython初級 - 機器學習 - Scikit-learn 入門
https://youtu.be/3m8Bb01uNNEPython初級 - 機器學習 - Scikit-learn - Regression 回歸
https://youtu.be/QyYZT8o-f3UPython初級 - 機器學習 - Scikit-learn - Classification 分類
https://youtu.be/JKn0OoHSoRoPython初級 - 機器學習 - Scikit-learn - Clustering 聚類+降維
https://youtu.be/UgXyK-k-CgMAbout the Site 🌐
This site provides links to random videos hosted at YouTube, with the emphasis on random. 🎥
Origins of the Idea 🌱
The original idea for this site stemmed from the need to benchmark the popularity of a video against the general population of YouTube videos. 🧠
Challenges Faced 🤔
Obtaining a large sample of videos was crucial for accurate ranking, but YouTube lacks a direct method to gather random video IDs.
Even searching for random strings on YouTube doesn't yield truly random results, complicating the process further. 🔍
Creating Truly Random Links 🛠️
The YouTube API offers additional functions enabling the discovery of more random videos. Through inventive techniques and a touch of space-time manipulation, we've achieved a process yielding nearly 100% random links to YouTube videos.
About YouTube 📺
YouTube, an American video-sharing website based in San Bruno, California, offers a diverse range of user-generated and corporate media content. 🌟
Content and Users 🎵
Users can upload, view, rate, share, and comment on videos, with content spanning video clips, music videos, live streams, and more.
While most content is uploaded by individuals, media corporations like CBS and the BBC also contribute. Unregistered users can watch videos, while registered users enjoy additional privileges such as uploading unlimited videos and adding comments.
Monetization and Impact 🤑
YouTube and creators earn revenue through Google AdSense, with most videos free to view. Premium channels and subscription services like YouTube Music and YouTube Premium offer ad-free streaming.
As of February 2017, over 400 hours of content were uploaded to YouTube every minute, with the site ranking as the second-most popular globally. By May 2019, this figure exceeded 500 hours per minute. 📈
List of ours generators⚡
Random YouTube Videos Generator
Random Film and Animation Video Generator
Random Autos and Vehicles Video Generator
Random Music Video Generator
Random Pets and Animals Video Generator
Random Sports Video Generator
Random Travel and Events Video Generator
Random Gaming Video Generator
Random People and Blogs Video Generator
Random Comedy Video Generator
Random Entertainment Video Generator
Random News and Politics Video Generator
Random Howto and Style Video Generator
Random Education Video Generator
Random Science and Technology Video Generator
Random Nonprofits and Activism Video Generator