در این مطلب، ویدئو NumPy را در 30 دقیقه یاد بگیرید با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:31:53
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:02,720
سلام به همه، numpy بدون شک
2
00:00:02,720 –> 00:00:05,279
مهم ترین کتابخانه پایتون
3
00:00:05,279 –> 00:00:06,799
در زمینه علم داده و
4
00:00:06,799 –> 00:00:08,000
یادگیری ماشین است
5
00:00:08,000 –> 00:00:10,320
و در ویدیوی امروز تمام
6
00:00:10,320 –> 00:00:12,400
توابع ضروری را با نمونه کدهایی به شما نشان خواهم
7
00:00:12,400 –> 00:00:13,679
داد که باید بدانید،
8
00:00:13,679 –> 00:00:15,679
بنابراین اگر این آموزش را تا انتها دنبال کنید.
9
00:00:15,679 –> 00:00:17,039
پس باید یک
10
00:00:17,039 –> 00:00:19,039
پایه محکم برای مقابله با وظایف علم داده خود داشته باشید،
11
00:00:19,039 –> 00:00:19,840
12
00:00:19,840 –> 00:00:22,000
اگر این برای شما خیلی سریع است، پس
13
00:00:22,000 –> 00:00:24,240
من یک دوره کامل خرابی در کانال خود
14
00:00:24,240 –> 00:00:25,840
دارم که به اینجا پیوند خواهم داد،
15
00:00:25,840 –> 00:00:28,320
این کمی کندتر است و
16
00:00:28,320 –> 00:00:30,240
کمی عمیق تر است. بنابراین می
17
00:00:30,240 –> 00:00:31,039
توانید این را بررسی کنید
18
00:00:31,039 –> 00:00:33,760
و همچنین من یک
19
00:00:33,760 –> 00:00:35,920
کتاب الکترونیکی رایگان در وب سایت خود دارم که در
20
00:00:35,920 –> 00:00:37,040
اینجا مشاهده می کنید.
21
00:00:37,040 –> 00:00:40,239
22
00:00:40,239 –> 00:00:42,559
23
00:00:42,559 –> 00:00:44,640
24
00:00:44,640 –> 00:00:46,320
توضیحات
25
00:00:46,320 –> 00:00:48,320
و اکنون بدون مقدمه بیایید خوب
26
00:00:48,320 –> 00:00:49,760
شروع کنیم،
27
00:00:49,760 –> 00:00:52,399
بنابراین من در داخل ایده خود هستم و اگر نمیدانید
28
00:00:52,399 –> 00:00:54,239
در اینجا چه میبینید، بنابراین
29
00:00:54,239 –> 00:00:56,800
من از یک نوت بوک دو جنگنده در اینجا استفاده میکنم،
30
00:00:56,800 –> 00:00:58,160
اما از آن نیز
31
00:00:58,160 –> 00:01:00,960
در داخل استفاده میکنم. از pycharm، بنابراین این به من یک
32
00:01:00,960 –> 00:01:02,399
راه خوب برای نشان دادن
33
00:01:02,399 –> 00:01:04,959
کد و همچنین خروجی به شما می دهد، بنابراین قسمت مرکزی
34
00:01:04,959 –> 00:01:06,320
در
35
00:01:06,320 –> 00:01:09,119
numpy آرایه چند بعدی یا آرایه nd است،
36
00:01:09,119 –> 00:01:10,000
37
00:01:10,000 –> 00:01:12,159
بنابراین اساساً همه چیز در numpy
38
00:01:12,159 –> 00:01:13,360
حول
39
00:01:13,360 –> 00:01:15,520
عملیات ریاضی با این آرایه ها می چرخد
40
00:01:15,520 –> 00:01:16,640
41
00:01:16,640 –> 00:01:20,000
ه عملیات ها عبارتند از بسیار بهینه شده است
42
00:01:20,000 –> 00:01:22,640
به طوری که بسیار سریعتر از
43
00:01:22,640 –> 00:01:25,360
استفاده از کدهای پایتون خالص معمولی خواهد بود، بنابراین در
44
00:01:25,360 –> 00:01:27,280
زیر هود بسیاری از کدها
45
00:01:27,280 –> 00:01:29,759
در c اجرا می شوند که یکی از
46
00:01:29,759 –> 00:01:31,920
دلایل سرعت آن است
47
00:01:31,920 –> 00:01:34,000
و البته اکنون اولین کاری که
48
00:01:34,000 –> 00:01:36,479
می خواهیم انجام دهیم این است ما میخواهیم numpy را نصب کنیم
49
00:01:36,479 –> 00:01:38,640
و میتوانیم این کار را با pip
50
00:01:38,640 –> 00:01:41,280
install numpy انجام دهیم یا اگر از anaconda
51
00:01:41,280 –> 00:01:42,159
استفاده میکنید، میتوانید بگویید
52
00:01:42,159 –> 00:01:44,960
conda install numpy و بعد از آن میخواهید
53
00:01:44,960 –> 00:01:45,600
54
00:01:45,600 –> 00:01:49,280
numpy snp را وارد کنید، بنابراین این فقط یک
55
00:01:49,280 –> 00:01:51,439
قرارداد است که فکر میکنم همه آن را وارد میکنند
56
00:01:51,439 –> 00:01:52,880
snp
57
00:01:52,880 –> 00:01:55,280
و سپس می توانید نسخه را بررسی کنید،
58
00:01:55,280 –> 00:01:56,320
بنابراین
59
00:01:56,320 –> 00:01:59,040
اجازه دهید در واقع این را اجرا کنیم و سپس می بینید که
60
00:01:59,040 –> 00:02:01,280
در مورد من با موفقیت وارد شده است
61
00:02:01,280 –> 00:02:02,560
و ما می توانیم نسخه را ببینیم،
62
00:02:02,560 –> 00:02:05,040
بنابراین فکر می کنم در حال حاضر آخرین
63
00:02:05,040 –> 00:02:06,040
نسخه
64
00:02:06,040 –> 00:02:09,479
1.20 است. این مورد
65
00:02:09,479 –> 00:02:10,639
1.90.2 است
66
00:02:10,639 –> 00:02:13,120
و اکنون همانطور که گفتم شی مرکزی
67
00:02:13,120 –> 00:02:15,040
آرایه numpy است
68
00:02:15,040 –> 00:02:18,239
بنابراین می توانیم با دادن یک لیست پایتون یک آرایه numpy ایجاد کنیم
69
00:02:18,239 –> 00:02:18,800
70
00:02:18,800 –> 00:02:22,239
و سپس می توانیم
71
00:02:22,239 –> 00:02:24,959
این آرایه را بررسی کنیم تا به عنوان مثال
72
00:02:24,959 –> 00:02:25,920
73
00:02:25,920 –> 00:02:28,640
بتوانیم شکلی را که می توانیم بررسی کنیم چاپ کنیم. نوع داده
74
00:02:28,640 –> 00:02:30,319
تعداد
75
00:02:30,319 –> 00:02:33,760
ابعاد اندازه و همچنین اندازه آیتم،
76
00:02:33,760 –> 00:02:36,400
بنابراین اجازه دهید این را اجرا کنیم و سپس در اینجا می
77
00:02:36,400 –> 00:02:36,959
78
00:02:36,959 –> 00:02:39,680
توانیم ببینیم که آرایه شکل را داریم
79
00:02:39,680 –> 00:02:40,400
80
00:02:40,400 –> 00:02:42,560
نوع داده تعداد ابعاد در این مورد فقط یک
81
00:02:42,560 –> 00:02:44,480
است و بعداً
82
00:02:44,480 –> 00:02:47,200
یک چند را خواهیم دید. – آرایه بعدی و
83
00:02:47,200 –> 00:02:47,680
84
00:02:47,680 –> 00:02:50,720
اندازه آن 5 است و اندازه آیتم
85
00:02:50,720 –> 00:02:53,920
اندازه هر عنصر بر حسب بایت است، بنابراین
86
00:02:53,920 –> 00:02:55,800
در این مورد برای
87
00:02:55,800 –> 00:02:59,440
n64 هشت است و سپس می توانیم با یک آرایه numpy روش های اساسی را انجام دهیم،
88
00:02:59,440 –> 00:03:00,080
89
00:03:00,080 –> 00:03:03,120
به عنوان مثال می توانیم به عناصر دسترسی داشته باشیم
90
00:03:03,120 –> 00:03:05,120
و آنها را تغییر دهیم. این
91
00:03:05,120 –> 00:03:07,519
مانند لیست پایتون است، بنابراین ما می توانیم به عنصری مانند این دسترسی داشته باشیم
92
00:03:07,519 –> 00:03:08,720
93
00:03:08,720 –> 00:03:11,280
و می توانیم عنصری مانند این را تغییر
94
00:03:11,280 –> 00:03:13,840
دهیم و همچنین می توانیم عملیات ریاضی را
95
00:03:13,840 –> 00:03:14,720
انجام
96
00:03:14,720 –> 00:03:17,640
دهیم، به عنوان مثال می توانیم ضرب ماتریس انجام دهیم
97
00:03:17,640 –> 00:03:19,040
98
00:03:19,040 –> 00:03:21,680
یا می توانیم روش های مختلفی را فراخوانی کنیم. یک
99
00:03:21,680 –> 00:03:23,920
ناتوان الف ray بنابراین بعداً بیشتر وارد این
100
00:03:23,920 –> 00:03:24,959
101
00:03:24,959 –> 00:03:27,200
میشویم، برای مثال میتوانیم مجموع همه عناصر را محاسبه کنیم
102
00:03:27,200 –> 00:03:28,400
،
103
00:03:28,400 –> 00:03:31,599
بنابراین اجازه دهید این را اجرا کنیم و در اینجا میبینیم که
104
00:03:31,599 –> 00:03:33,200
اولین عنصر را چاپ میکنیم،
105
00:03:33,200 –> 00:03:35,519
سپس یک عنصر را تغییر میدهیم و
106
00:03:35,519 –> 00:03:36,720
آرایه جدید را
107
00:03:36,720 –> 00:03:39,440
چاپ میکنیم، سپس در اینجا نتیجه را بعد از
108
00:03:39,440 –> 00:03:41,760
ضرب ماتریس و این
109
00:03:41,760 –> 00:03:43,280
مجموع تمام عناصر است
110
00:03:43,280 –> 00:03:45,280
و به هر حال این بسیار سریعتر
111
00:03:45,280 –> 00:03:46,959
از کد پایتون خواهد بود، بنابراین ما
112
00:03:46,959 –> 00:03:49,440
نیز در یک لحظه این را خواهیم دید و اکنون در اینجا
113
00:03:49,440 –> 00:03:52,080
ما یک مقایسه سریع بین یک آرایه
114
00:03:52,080 –> 00:03:52,640
و یک
115
00:03:52,640 –> 00:03:56,000
لیست را می بینیم، بنابراین ما اساسا آنها را ایجاد می کنیم.
116
00:03:56,000 –> 00:03:58,640
به همین ترتیب، یک لیست مانند آن
117
00:03:58,640 –> 00:04:01,360
ایجاد می کنیم و یک آرایه numpy با این
118
00:04:01,360 –> 00:04:02,000
تابع ایجاد
119
00:04:02,000 –> 00:04:04,720
می کنیم و سپس می توانیم لیستی به آن بدهیم، بنابراین اگر
120
00:04:04,720 –> 00:04:05,360
این را چاپ کنیم
121
00:04:05,360 –> 00:04:07,439
تقریباً یکسان به نظر می رسند، اما
122
00:04:07,439 –> 00:04:09,599
رفتار بسیار متفاوتی دارند،
123
00:04:09,599 –> 00:04:12,080
مثلاً اگر ضربی را با یک عدد انجام دهیم.
124
00:04:12,080 –> 00:04:12,879
125
00:04:12,879 –> 00:04:16,238
بنابراین لیست را دو بار در یک لیست قرار دهید
126
00:04:16,238 –> 00:04:19,120
سپس لیست را دو بار تکرار خواهیم
127
00:04:19,120 –> 00:04:19,918
کرد، بنابراین
128
00:04:19,918 –> 00:04:23,040
اگر l به اضافه l انجام دهیم این یکسان خواهد بود
129
00:04:23,040 –> 00:04:26,000
و از طرف دیگر اگر دو برابر
130
00:04:26,000 –> 00:04:26,400
131
00:04:26,400 –> 00:04:30,240
آرایه numpy انجام دهیم، برای هر عنصر یک ضرب می گیریم،
132
00:04:30,240 –> 00:04:32,479
بنابراین این یک بی است g
133
00:04:32,479 –> 00:04:34,240
تفاوتی که باید بدانید
134
00:04:34,240 –> 00:04:37,199
و به عنوان یک نکته در اینجا اساساً می توانیم بگوییم
135
00:04:37,199 –> 00:04:37,520
یک
136
00:04:37,520 –> 00:04:40,400
تابع اعمال شده روی یک آرایه
137
00:04:40,400 –> 00:04:41,280
numpy از نظر عنصر عمل می کند،
138
00:04:41,280 –> 00:04:44,880
بنابراین اجازه دهید این را اجرا کنیم
139
00:04:44,880 –> 00:04:47,520
و در اینجا می بینیم که لیست و
140
00:04:47,520 –> 00:04:49,759
آرایه را داریم و آنها تقریباً یکسان به نظر می رسند
141
00:04:49,759 –> 00:04:52,560
و اکنون اگر ما لیست را ضرب می کنیم که
142
00:04:52,560 –> 00:04:53,919
دو برابر لیست به دست
143
00:04:53,919 –> 00:04:57,360
می آوریم و در اینجا um هر عنصر را در
144
00:04:57,360 –> 00:05:00,160
2 برای آرایه ضرب می کنیم، بنابراین دوباره
145
00:05:00,160 –> 00:05:01,840
این یک تفاوت بزرگ است
146
00:05:01,840 –> 00:05:03,440
حالا بیایید نگاهی به نحوه انجام
147
00:05:03,440 –> 00:05:05,840
محصول نقطه ای بیندازیم، بنابراین حاصلضرب نقطه
148
00:05:05,840 –> 00:05:08,880
در یک آرایه بسیار مهم است. موارد استفاده زیاد است و
149
00:05:08,880 –> 00:05:10,960
اگر بخواهیم آن را در کد پایتون انجام
150
00:05:10,960 –> 00:05:13,039
دهیم و باید این کار را انجام دهیم،
151
00:05:13,039 –> 00:05:16,479
بنابراین حاصل ضرب نقطه به عنوان
152
00:05:16,479 –> 00:05:18,800
مجموع محصولات همه
153
00:05:18,800 –> 00:05:20,400
عناصر مربوطه تعریف می شود،
154
00:05:20,400 –> 00:05:23,120
بنابراین اساساً ما به یک حلقه for در اینجا و سپس نیاز داریم.
155
00:05:23,120 –> 00:05:23,680
156
00:05:23,680 –> 00:05:26,320
هر عنصر مربوطه را ضرب کنید و
157
00:05:26,320 –> 00:05:27,440
آن را جمع کنید
158
00:05:27,440 –> 00:05:29,759
و در numpy این بسیار ساده تر است، بنابراین
159
00:05:29,759 –> 00:05:31,759
این یک خطی است تا بتوانیم
160
00:05:31,759 –> 00:05:35,039
نقطه numpy a و b را بگوییم و
161
00:05:35,039 –> 00:05:37,520
همچنین یک چیز خوب است که بدانید تقریباً همه
162
00:05:37,520 –> 00:05:38,800
توابع نیز
163
00:05:38,800 –> 00:05:40,880
روش های نمونه هستند تا بتوانیم از آنها استفاده کنیم.
164
00:05:40,880 –> 00:05:43,360
به طور مستقیم روی آرایه بنابراین w e می تواند
165
00:05:43,360 –> 00:05:46,800
یک نقطه b بگوید و همچنین در نسخه های جدیدتر
166
00:05:46,800 –> 00:05:49,840
می توانیم از علامت افزودن برای محصول نقطه استفاده
167
00:05:49,840 –> 00:05:52,960
کنیم، بنابراین بیایید این را اجرا کنیم و سپس می بینیم
168
00:05:52,960 –> 00:05:55,280
که نتیجه برای همه عملیات یکسان است،
169
00:05:55,280 –> 00:05:56,400
170
00:05:56,400 –> 00:06:00,240
اما اکنون خواهیم دید که um کد numpy
171
00:06:00,240 –> 00:06:03,120
بسیار است. سریعتر، بنابراین در اینجا من یک
172
00:06:03,120 –> 00:06:04,400
مقایسه سرعت
173
00:06:04,400 –> 00:06:08,240
یک آرایه numpy و یک لیست پایتون دارم
174
00:06:08,240 –> 00:06:11,840
و یک لیست بزرگ و همچنین یک آرایه بزرگ ایجاد می کنیم
175
00:06:11,840 –> 00:06:12,560
176
00:06:12,560 –> 00:06:16,240
و به هر حال می توانیم یک
177
00:06:16,240 –> 00:06:19,759
آرایه numpy را به لیستی مانند آن برگردانیم
178
00:06:19,759 –> 00:06:22,880
و سپس حاصل ضرب نقطه ای را محاسبه می کنیم.
179
00:06:22,880 –> 00:06:25,199
هزار بار و یک بار این کار را
180
00:06:25,199 –> 00:06:26,639
با روش پایتون انجام می دهیم
181
00:06:26,639 –> 00:06:28,639
و روش دوم آن را با خط
182
00:06:28,639 –> 00:06:30,080
numpy one انجام می دهیم
183
00:06:30,080 –> 00:06:32,160
و سپس زمان را اندازه می گیریم و
184
00:06:32,160 –> 00:06:35,120
این را اجرا می کنیم پس بیایید این کار را انجام دهیم و این را چاپ کنیم
185
00:06:35,120 –> 00:06:38,160
و سپس در اینجا زمان را با لیست می بینیم.
186
00:06:38,160 –> 00:06:41,360
زمان با آرایه و همچنین نسبت،
187
00:06:41,360 –> 00:06:44,400
بنابراین تقریبا 300 برابر سریعتر بود، بنابراین
188
00:06:44,400 –> 00:06:45,360
این یک تفاوت بزرگ است
189
00:06:45,360 –> 00:06:47,440
که باید بدانید و من
190
00:06:47,440 –> 00:06:48,479
قبلاً به این
191
00:06:48,479 –> 00:06:51,039
یکی از دلایل آن اشاره کردم این است که در زیر
192
00:06:51,039 –> 00:06:51,599
هود،
193
00:06:51,599 –> 00:06:54,080
کد c به جای کد پایتون اجرا می شود
194
00:06:54,080 –> 00:06:55,919
و به همین دلیل است. خیلی سریع است
195
00:06:55,919 –> 00:06:57,759
پس بیایید نگاهی به چگونگی آن بیندازیم ما
196
00:06:57,759 –> 00:06:59,599
یک آرایه چند بعدی
197
00:06:59,599 –> 00:07:03,680
یا nd ایجاد می کنیم یا به عنوان ماتریس نیز شناخته می شود،
198
00:07:03,680 –> 00:07:06,880
بنابراین می توانیم یک آرایه nd را با عبور
199
00:07:06,880 –> 00:07:07,199
200
00:07:07,199 –> 00:07:10,240
از لیست لیست هایی مانند این ایجاد کنیم
201
00:07:10,240 –> 00:07:13,440
و اگر a و همچنین یک شکل نقطه را چاپ
202
00:07:13,440 –> 00:07:15,120
کنیم، خواهیم دید که این یک
203
00:07:15,120 –> 00:07:18,319
دو است. دو شکل پس دو سطر و دو
204
00:07:18,319 –> 00:07:19,599
ستون
205
00:07:19,599 –> 00:07:22,720
و دوباره می توانیم به آن دسترسی داشته باشیم مثل اینکه
206
00:07:22,720 –> 00:07:26,960
یک آرایه یک ام بعدی را انجام می دهیم،
207
00:07:26,960 –> 00:07:29,919
اما سپس فقط ردیف اول را می گیریم، بنابراین اگر
208
00:07:29,919 –> 00:07:31,599
عنصر خاصی را می خواهید،
209
00:07:31,599 –> 00:07:34,639
باید دو
210
00:07:34,639 –> 00:07:37,280
شاخص در این مورد به آن بدهیم. مورد اولی
211
00:07:37,280 –> 00:07:37,919
برای
212
00:07:37,919 –> 00:07:41,199
سطر و دومی برای ستون است
213
00:07:41,199 –> 00:07:44,560
یا میتوانیم آن را با کاما از هم جدا کنیم، بنابراین
214
00:07:44,560 –> 00:07:45,199
215
00:07:45,199 –> 00:07:48,479
میتوانیم بگوییم 0 کاما 0 این همان خواهد بود
216
00:07:48,479 –> 00:07:49,039
217
00:07:49,039 –> 00:07:52,240
و همچنین میتوانیم برش را
218
00:07:52,240 –> 00:07:54,879
مانند کاری انجام دهیم. یک لیست پایتون بنابراین
219
00:07:54,879 –> 00:07:56,000
این
220
00:07:56,000 –> 00:07:59,120
همه سطرهای ستون صفر
221
00:07:59,120 –> 00:07:59,759
را به ما می دهد و
222
00:07:59,759 –> 00:08:03,039
تمام ستون های سطر یک را به ما می دهد، بنابراین بیایید این را اجرا
223
00:08:03,039 –> 00:08:06,160
کنیم و در اینجا آرایه 2d
224
00:08:06,160 –> 00:08:06,960
و شکل
225
00:08:06,960 –> 00:08:09,039
و سپس همه عناصر مختلف را داریم که به
226
00:08:09,039 –> 00:08:10,080
آنها دسترسی
227
00:08:10,080 –> 00:08:12,479
داریم، سپس ما برای مثال میتوان
228
00:08:12,479 –> 00:08:14,319
انتقال را با فراخوانی
229
00:08:14,319 –> 00:08:17,440
یک نقطه t محاسبه کرد، بنابراین بیایید این
230
00:08:17,440 –> 00:08:20,319
و the را اجرا کنیم n در اینجا ماتریس جابجایی این را می بینیم
231
00:08:20,319 –> 00:08:21,199
232
00:08:21,199 –> 00:08:24,479
سپس همانطور که گفتم می توانیم
233
00:08:24,479 –> 00:08:27,120
ضرب های ماتریسی را انجام دهیم به عنوان مثال
234
00:08:27,120 –> 00:08:27,759
می توانیم
235
00:08:27,759 –> 00:08:30,560
ضرب های عاقلانه را انجام دهیم یا می توانیم حاصل
236
00:08:30,560 –> 00:08:32,799
ضرب نقطه ای را با دو آرایه محاسبه کنیم
237
00:08:32,799 –> 00:08:34,080
238
00:08:34,080 –> 00:08:36,799
و یک چیز مهم که باید
239
00:08:36,799 –> 00:08:37,599
به خاطر داشته باشیم
240
00:08:37,599 –> 00:08:39,279
این است که وقتی این کار را انجام می دهیم یک
241
00:08:39,279 –> 00:08:41,120
آرایه چند بعدی
242
00:08:41,120 –> 00:08:44,320
سپس ابعاد داخلی باید مطابقت داشته باشند
243
00:08:44,320 –> 00:08:45,360
، بنابراین ستون
244
00:08:45,360 –> 00:08:48,560
های ماتریس اول یا تعداد ستون های
245
00:08:48,560 –> 00:08:49,279
ماتریس اول
246
00:08:49,279 –> 00:08:52,399
باید برابر با تعداد
247
00:08:52,399 –> 00:08:55,839
ردیف های ماتریس دوم باشد، بنابراین
248
00:08:55,839 –> 00:08:58,959
در این حالت a یک
249
00:08:58,959 –> 00:09:02,080
ماتریس 2 در 2 است و
250
00:09:02,080 –> 00:09:05,600
اگر b ما
251
00:09:05,600 –> 00:09:09,519
این است که اگر b
252
00:09:09,519 –> 00:09:13,279
ماتریس 2 در 3 باشد، این کار خواهد کرد
253
00:09:13,279 –> 00:09:16,800
زیرا همانطور که گفتم تعداد
254
00:09:16,800 –> 00:09:20,399
ستون های a 2 و تعداد
255
00:09:20,399 –> 00:09:24,160
سطرها و b نیز 2 است. بنابراین اگر بگوییم
256
00:09:24,160 –> 00:09:27,440
c برابر است با یک نقطه b
257
00:09:27,440 –> 00:09:30,880
و این را اجرا کنید آنگاه این کار می کند
258
00:09:30,880 –> 00:09:34,080
اما اکنون اگر این را جابه جا کنیم بنابراین اگر بگوییم
259
00:09:34,080 –> 00:09:34,560
260
00:09:34,560 –> 00:09:38,080
b dot t این یک
261
00:09:38,080 –> 00:09:41,279
ماتریس سه در دو خواهد بود و اکنون
262
00:09:41,279 –> 00:09:42,720
دیگر کار نمی کند
263
00:09:42,720 –> 00:09:45,200
و سپس این خطای مقدار را دریافت خواهیم
264
00:09:45,200 –> 00:09:47,600
کرد اشکال هم تراز نیستند، بنابراین این یک
265
00:09:47,600 –> 00:09:49,839
mi مبتدی بسیار محبوب است در نظر داشته باشید که
266
00:09:49,839 –> 00:09:51,839
اشکال با هم مطابقت نداشته باشند و بعد کار
267
00:09:51,839 –> 00:09:52,480
268
00:09:52,480 –> 00:09:55,519
نکند، بنابراین به خاطر داشته باشید که برای مثال میتوانیم
269
00:09:55,519 –> 00:09:57,200
270
00:09:57,200 –> 00:10:00,480
تعیینکننده را با np dot lin arc
271
00:10:00,480 –> 00:10:03,519
dot بدهی محاسبه کنیم، بنابراین این برای بسته
272
00:10:03,519 –> 00:10:04,240
جبر خطی است،
273
00:10:04,240 –> 00:10:07,279
ما
274
00:10:07,279 –> 00:10:09,279
در این بسته نیز معکوس داریم. بنابراین ما می توانیم
275
00:10:09,279 –> 00:10:11,440
معکوس را مانند فراخوانی
276
00:10:11,440 –> 00:10:14,959
کنیم، بنابراین می توانیم یک ماتریس مورب را نیز فراخوانی کنیم
277
00:10:14,959 –> 00:10:17,720
و این دو
278
00:10:17,720 –> 00:10:19,040
عملکرد متفاوت دارد،
279
00:10:19,040 –> 00:10:21,519
بنابراین اجازه دهید ابتدا این را اجرا کنیم و به مثال نگاهی بیندازیم
280
00:10:21,519 –> 00:10:22,399
،
281
00:10:22,399 –> 00:10:26,000
بنابراین اگر
282
00:10:26,000 –> 00:10:29,120
این را در یک آرایه numpy فراخوانی
283
00:10:29,120 –> 00:10:32,720
کنیم، فقط عناصر مورب را دریافت خواهیم کرد.
284
00:10:32,720 –> 00:10:36,000
بنابراین بیایید a
285
00:10:36,000 –> 00:10:39,120
را نیز در اینجا چاپ کنیم، پس بیایید این را اجرا
286
00:10:39,120 –> 00:10:42,480
کنیم، در اینجا می بینیم که a داریم و
287
00:10:42,480 –> 00:10:46,000
سپس فقط عناصر مورب
288
00:10:46,000 –> 00:10:49,600
یک و چهار را می گیریم و اگر
289
00:10:49,600 –> 00:10:52,959
numpy diag را روی این
290
00:10:52,959 –> 00:10:55,200
روی این عناصر صدا کنیم، بنابراین اگر این را روی
291
00:10:55,200 –> 00:10:56,480
یک بردار 1d صدا
292
00:10:56,480 –> 00:11:00,480
کنیم، ما یک
293
00:11:00,480 –> 00:11:04,320
2d یا نه 2d برمی گردانیم، بنابراین یک ماتریس مورب
294
00:11:04,320 –> 00:11:05,440
295
00:11:05,440 –> 00:11:08,320
با تعداد عناصری که در
296
00:11:08,320 –> 00:11:09,120
اینجا داریم
297
00:11:09,120 –> 00:11:12,160
و بقیه با صفر پر شده است، خواهیم داشت،
298
00:11:12,160 –> 00:11:13,680
سپس بیایید نگاهی به نحوه انجام
299
00:11:13,680 –> 00:11:16,959
برش نمایه سازی و نمایه سازی بولی بیندازیم،
300
00:11:16,959 –> 00:11:19,440
بنابراین این بسیار است. شبیه به لیست های پایتون
301
00:11:19,440 –> 00:11:22,000
بنابراین من خیلی سریع به این موضوع می پردازم تا
302
00:11:22,000 –> 00:11:24,000
بتوانیم به
303
00:11:24,000 –> 00:11:26,959
آرایه ای مانند آن دسترسی پیدا کنیم، با دادن مقدار جدا شده با کاما
304
00:11:26,959 –> 00:11:28,560
305
00:11:28,560 –> 00:11:31,600
و شاخص برای هر بعد، می توانیم
306
00:11:31,600 –> 00:11:31,920
307
00:11:31,920 –> 00:11:35,040
برش را با دو نقطه انجام دهیم
308
00:11:35,040 –> 00:11:38,240
تا از ابتدا تا انتها در این بعد
309
00:11:38,240 –> 00:11:40,959
و برای به عنوان مثال، اگر ستون صفر را میخواهید،
310
00:11:40,959 –> 00:11:41,839
311
00:11:41,839 –> 00:11:44,959
ما روی
312
00:11:44,959 –> 00:11:49,120
تمام ردیفها میرویم و فقط ستون صفر را میگیریم،
313
00:11:49,120 –> 00:11:52,800
پس بیایید این را اجرا کنیم و سپس خروجیهای
314
00:11:52,800 –> 00:11:53,680
مختلف را
315
00:11:53,680 –> 00:11:55,920
برای تمام عملیاتهای برش میبیند،
316
00:11:55,920 –> 00:11:57,680
ما همچنین میتوانیم نمایهسازی
317
00:11:57,680 –> 00:12:00,160
را از انتها شروع کنیم تا بتوانیم برای
318
00:12:00,160 –> 00:12:00,959
به عنوان مثال از
319
00:12:00,959 –> 00:12:04,000
منهای یک یا منهای دو استفاده کنید، بنابراین اگر به
320
00:12:04,000 –> 00:12:05,200
این شکل به
321
00:12:05,200 –> 00:12:08,160
آن دسترسی داشته باشیم، میخواهیم به اولین با عرض پوزش
322
00:12:08,160 –> 00:12:08,720
به
323
00:12:08,720 –> 00:12:12,160
ردیف آخر و همچنین آخرین
324
00:12:12,160 –> 00:12:15,200
ستون دسترسی پیدا کنیم، بنابراین این آخرین
325
00:12:15,200 –> 00:12:18,639
عنصر است، بنابراین اجازه دهید این را اجرا کنیم و سپس
326
00:12:18,639 –> 00:12:19,680
خواهیم دید
327
00:12:19,680 –> 00:12:23,920
که 12 را از این ماتریس، بنابراین این
328
00:12:23,920 –> 00:12:24,399
آخرین
329
00:12:24,399 –> 00:12:27,360
عنصر در سطر آخر و آخرین
330
00:12:27,360 –> 00:12:28,000
ستون است،
331
00:12:28,000 –> 00:12:30,560
پس این نیز بسیار مفید است و به
332
00:12:30,560 –> 00:12:32,639
آن نمایه سازی بولی گفته می شود، بنابراین
333
00:12:32,639 –> 00:12:36,320
ما در اینجا یک آرایه داریم و سپس یک
334
00:12:36,320 –> 00:12:39,920
آرایه با همان شکل با درست یا
335
00:12:39,920 –> 00:12:43,200
نادرست بر اساس شرایط با
336
00:12:43,200 –> 00:12:46,480
بنابراین می توانیم بگوییم شاخص بولی برابر با
337
00:12:46,480 –> 00:12:50,160
دو بزرگتر است و اگر این را اجرا کنیم
338
00:12:50,160 –> 00:12:51,279
به همان شکل می گیریم
339
00:12:51,279 –> 00:12:53,680
و false یا true بسته به این
340
00:12:53,680 –> 00:12:54,720
شرط وجود دارد
341
00:12:54,720 –> 00:12:58,000
و اکنون می توانیم از این آرایه استفاده کرده
342
00:12:58,000 –> 00:13:02,399
و آن را به عنوان یک عملیات نمایه سازی
343
00:13:02,399 –> 00:13:06,480
در a و خود برگردانیم. توجه داشته باشید که این
344
00:13:06,480 –> 00:13:09,519
یک آرایه رتبه یک خواهد بود، بنابراین
345
00:13:09,519 –> 00:13:13,200
تمام عناصر درست را برمی گرداند،
346
00:13:13,200 –> 00:13:16,240
بنابراین در این مورد باید سه
347
00:13:16,240 –> 00:13:20,480
چهار پنج و شش به عنوان رتبه یک باشد، بنابراین اجازه دهید
348
00:13:20,480 –> 00:13:24,399
این سلول را اجرا کنیم و سپس می بینیم که نتیجه را دریافت می
349
00:13:24,399 –> 00:13:25,920
کنیم. کار می کند
350
00:13:25,920 –> 00:13:28,560
بنابراین بله، این بسیار مفید است و به جای
351
00:13:28,560 –> 00:13:29,040
352
00:13:29,040 –> 00:13:32,160
انجام این کار، می توانیم آن را فقط در
353
00:13:32,160 –> 00:13:32,560
یک
354
00:13:32,560 –> 00:13:35,920
عبارت مختصر انجام دهیم، بنابراین می توانیم
355
00:13:35,920 –> 00:13:39,680
به a بزرگتر از دو دسترسی داشته باشیم، بنابراین اگر
356
00:13:39,680 –> 00:13:41,760
این را اجرا کنیم، همان عنصر را دریافت می کنیم
357
00:13:41,760 –> 00:13:43,440
و سپس ما دارای
358
00:13:43,440 –> 00:13:46,720
numpy است که در آن یک
359
00:13:46,720 –> 00:13:49,440
آرایه با اندازه یکسان به دست می دهد و این
360
00:13:49,440 –> 00:13:52,480
به ما این امکان را می دهد که مقادیر را تغییر
361
00:13:52,480 –> 00:13:55,839
دهیم تا بتوانیم بگوییم b برابر است numpy
362
00:13:55,839 –> 00:13:58,880
در جایی که a بزرگتر از 2 است
363
00:13:58,880 –> 00:14:00,720
و اگر اینطور باشد،
364
00:14:00,720 –> 00:14:02,000
فقط از مقدار استفاده می کنیم.
365
00:14:02,000 –> 00:14:04,639
از a در این موقعیت و در غیر این صورت
366
00:14:04,639 –> 00:14:05,600
یک منهای قرار می دهیم
367
00:14:05,600 –> 00:14:08,399
بنابراین، اگر این را اجرا کنیم، می
368
00:14:08,399 –> 00:14:09,120
369
00:14:09,120 –> 00:14:12,000
بینیم که شکل یکسانی به دست می آوریم
370
00:14:12,000 –> 00:14:13,279
و برای
371
00:14:13,279 –> 00:14:15,519
تمام موقعیت هایی که این اشتباه است، منهای یک می
372
00:14:15,519 –> 00:14:17,920
گیریم و سپس راه دیگری برای
373
00:14:17,920 –> 00:14:19,440
ایندکس کردن داریم که به آن نمایه سازی فانتزی می گویند،
374
00:14:19,440 –> 00:14:22,079
بنابراین با این می توانیم
375
00:14:22,079 –> 00:14:22,720
به آن دسترسی داشته باشیم.
376
00:14:22,720 –> 00:14:25,920
چندین شاخص در یک زمان برای مثال اگر
377
00:14:25,920 –> 00:14:26,639
378
00:14:26,639 –> 00:14:29,680
یک آرایه مانند آن داریم و سپس می توانیم
379
00:14:29,680 –> 00:14:32,959
با دادن اندیس به آن دسترسی داشته باشیم،
380
00:14:32,959 –> 00:14:35,519
بنابراین در این مورد ما عنصر را در
381
00:14:35,519 –> 00:14:36,160
اندیس
382
00:14:36,160 –> 00:14:39,839
یک سه و پنج می خواهیم پس باید 19
383
00:14:39,839 –> 00:14:43,040
41 و 61 باشد، پس بیایید
384
00:14:43,040 –> 00:14:45,760
این را اجرا کنیم و سپس در اینجا
385
00:14:45,760 –> 00:14:47,440
به نتیجه میرسیم، مثلاً فرض کنید میخواهیم
386
00:14:47,440 –> 00:14:50,800
همه عناصر
387
00:14:50,800 –> 00:14:54,240
388
00:14:54,240 –> 00:14:57,760
389
00:14:57,760 –> 00:15:01,120
زوج a را داشته باشیم، سپس میتوانیم با گفتن حتی برابر است با کمان کمانی که در آن یک مدول 2 برابر است با 0، شاخصهایی را که a زوج است به دست آوریم
390
00:15:01,120 –> 00:15:03,600
و سپس آن را صاف کنیم تا یک عدد به دست آید.
391
00:15:03,600 –> 00:15:06,800
آرایه 1d مانند اینجا و سپس می توانیم این کار را انجام دهیم
392
00:15:06,800 –> 00:15:08,240
یا از این به عنوان
393
00:15:08,240 –> 00:15:11,279
آرایه نمایه سازی فانتزی استفاده کنیم و آن را در فهرست خود قرار دهیم
394
00:15:11,279 –> 00:15:14,959
و حالا اگر این را اجرا
395
00:15:14,959 –> 00:15:17,279
کنیم، در اینجا خواهیم دید که همه
396
00:15:17,279 –> 00:15:18,160
شاخص ها را داریم
397
00:15:18,160 –> 00:15:21,519
که a زوج است و سپس اگر این را
398
00:15:21,519 –> 00:15:24,000
دوباره قرار دهیم در a و به عناصر دسترسی پیدا می کنیم سپس
399
00:15:24,000 –> 00:15:25,839
فقط ev را دریافت می کنیم en
400
00:15:25,839 –> 00:15:27,680
عناصر سپس بیایید نگاهی به نحوه
401
00:15:27,680 –> 00:15:31,040
تغییر شکل دهیم، به عنوان مثال، ما یک
402
00:15:31,040 –> 00:15:34,720
آرایه 1 بعدی داریم که توسط um آن را ایجاد می
403
00:15:34,720 –> 00:15:36,880
کنیم، بنابراین خواهیم دید که چگونه
404
00:15:36,880 –> 00:15:38,880
آرایه ها را در یک لحظه ایجاد می کنیم و می
405
00:15:38,880 –> 00:15:41,839
توانیم ترتیب numpy و سپس از عناصر
406
00:15:41,839 –> 00:15:43,199
1 تا 7 را
407
00:15:43,199 –> 00:15:45,759
انجام دهیم. این شبیه به این خواهد بود و این
408
00:15:45,759 –> 00:15:46,560
یک آرایه 1d است
409
00:15:46,560 –> 00:15:49,839
و سپس می توانیم یک تغییر شکل نقطه ای فراخوانی کنیم
410
00:15:49,839 –> 00:15:52,800
و به عنوان مثال
411
00:15:52,800 –> 0