<jupyter_start><jupyter_text>Numpy Spis treści:* [Import biblioteki](0)* [Ćwiczenie 91](1)* [Ćwiczenie 92](2)* [Ćwiczenie 93](3)* [Ćwiczenie 94](4)* [Ćwiczenie 95](5)* [Ćwiczenie 96](6)* [Ćwiczenie 97](7)* [Ćwiczenie 98](8)* [Ćwiczenie 99](9)* [Ćwiczenie 100](10)  Import biblioteki<jupyter_code>import numpy as np

np.set_printoptions(linewidth=160, suppress=True)
np.__version__<jupyter_output><empty_output><jupyter_text>Ćwiczenie 91Podany jest poniższy string _wig_games_raw_ zawierający dane dotyczące indeksu sektorowego WIG.GAMES:```wig_games_raw = """Profil	Czas	Kurs	Zmiana	Zmiana %	Odn.	Otw.	Min.	Max.	Wolumen	Obrót	Udział11B (11BIT)	17 kwi 17:01	391.00	+8.00	(+2.09%)	383.00	383.50	383.00	394.00	12 784	4 994 874	19.034%CDR (CDPROJEKT)	17 kwi 17:01	339.50	+5.30	(+1.59%)	334.20	338.30	337.00	344.20	233 059	79 245 368	39.618%CIG (CIGAMES)	17 kwi 17:03	0.742	-0.012	(-1.59%)	0.754	0.772	0.730	0.772	1 311 078	971 459	1.855%PLW (PLAYWAY)	17 kwi 17:03	387.50	+18.00	(+4.87%)	369.50	374.00	373.00	388.00	33 206	12 661 786	10.638%TEN (TSGAMES)	17 kwi 17:02	349.50	+22.50	(+6.88%)	327.00	332.00	330.00	353.50	39 793	13 697 060	28.855%"""```Zbuduj z tych danych tablicę numpy i nazwij ją _wig_games_.__Oczekiwany wynik:__```array([['Profil', 'Czas', 'Kurs', 'Zmiana', 'Zmiana%', 'Odn.', 'Otw.', 'Min.', 'Max.', 'Wolumen', 'Obrót', 'Udział'],       ['11B(11BIT)', '17kwi17:01', '391.00', '+8.00', '(+2.09%)', '383.00', '383.50', '383.00', '394.00', '12784', '4994874', '19.034%'],       ['CDR(CDPROJEKT)', '17kwi17:01', '339.50', '+5.30', '(+1.59%)', '334.20', '338.30', '337.00', '344.20', '233059', '79245368', '39.618%'],       ['CIG(CIGAMES)', '17kwi17:03', '0.742', '-0.012', '(-1.59%)', '0.754', '0.772', '0.730', '0.772', '1311078', '971459', '1.855%'],       ['PLW(PLAYWAY)', '17kwi17:03', '387.50', '+18.00', '(+4.87%)', '369.50', '374.00', '373.00', '388.00', '33206', '12661786', '10.638%'],       ['TEN(TSGAMES)', '17kwi17:02', '349.50', '+22.50', '(+6.88%)', '327.00', '332.00', '330.00', '353.50', '39793', '13697060', '28.855%']], dtype='<U14')```<jupyter_code># tutaj wpisz rozwiązanie
wig_games_raw = """Profil	Czas	Kurs	Zmiana	Zmiana %	Odn.	Otw.	Min.	Max.	Wolumen	Obrót	Udział
11B (11BIT)	17 kwi 17:01	391.00	+8.00	(+2.09%)	383.00	383.50	383.00	394.00	12 784	4 994 874	19.034%
CDR (CDPROJEKT)	17 kwi 17:01	339.50	+5.30	(+1.59%)	334.20	338.30	337.00	344.20	233 059	79 245 368	39.618%
CIG (CIGAMES)	17 kwi 17:03	0.742	-0.012	(-1.59%)	0.754	0.772	0.730	0.772	1 311 078	971 459	1.855%
PLW (PLAYWAY)	17 kwi 17:03	387.50	+18.00	(+4.87%)	369.50	374.00	373.00	388.00	33 206	12 661 786	10.638%
TEN (TSGAMES)	17 kwi 17:02	349.50	+22.50	(+6.88%)	327.00	332.00	330.00	353.50	39 793	13 697 060	28.855%"""

lines = wig_games_raw.splitlines()
lines = [line.split('\t') for line in lines]
wig_games = np.array(lines, dtype=np.str)
wig_games = np.char.replace(wig_games, ' ', '')
wig_games<jupyter_output><empty_output><jupyter_text>Ćwiczenie 92Z tablicy _wig_games_ z poprzedniego ćwiczenia usuń kolumny:* Zmiana* Zmiana %* Odn.* Wolumen__Oczekiwany wynik:__```array([['Profil', 'Czas', 'Kurs', 'Otw.', 'Min.', 'Max.', 'Obrót', 'Udział'],       ['11B (11BIT)', '17 kwi 17:01', '391.00', '383.50', '383.00', '394.00', '4 994 874', '19.034%'],       ['CDR (CDPROJEKT)', '17 kwi 17:01', '339.50', '338.30', '337.00', '344.20', '79 245 368', '39.618%'],       ['CIG (CIGAMES)', '17 kwi 17:03', '0.742', '0.772', '0.730', '0.772', '971 459', '1.855%'],       ['PLW (PLAYWAY)', '17 kwi 17:03', '387.50', '374.00', '373.00', '388.00', '12 661 786', '10.638%'],       ['TEN (TSGAMES)', '17 kwi 17:02', '349.50', '332.00', '330.00', '353.50', '13 697 060', '28.855%']], dtype='<U15')```<jupyter_code># tutaj wpisz rozwiązanie
wig_games = np.delete(wig_games, [3, 4, 5, 9], axis=1)
wig_games<jupyter_output><empty_output><jupyter_text>Ćwiczenie 93Tablicę z poprzedniego ćwiczenia _wig_games_ zapisz do pliku _wig_games.csv_.<jupyter_code># tutaj wpisz rozwiązanie
np.savetxt(fname='wig_games.csv', X=wig_games, fmt='%s', delimiter=',')<jupyter_output><empty_output><jupyter_text>Uruchom poniższą komórkę w celu sprawdzenia.<jupyter_code>!head wig_games.csv<jupyter_output>Profil,Czas,Kurs,Otw.,Min.,Max.,Obrót,Udział
11B(11BIT),17kwi17:01,391.00,383.50,383.00,394.00,4994874,19.034%
CDR(CDPROJEKT),17kwi17:01,339.50,338.30,337.00,344.20,79245368,39.618%
CIG(CIGAMES),17kwi17:03,0.742,0.772,0.730,0.772,971459,1.855%
PLW(PLAYWAY),17kwi17:03,387.50,374.00,373.00,388.00,12661786,10.638%
TEN(TSGAMES),17kwi17:02,349.50,332.00,330.00,353.50,13697060,28.855%<jupyter_text>Ćwiczenie 94Wczytaj do zmiennej _wig_games_new_ zawartość pliku _wig_games.csv_.<jupyter_code># tutaj wpisz rozwiązanie
wig_games_new = np.loadtxt(fname='wig_games.csv', delimiter=',', dtype=str)
wig_games_new<jupyter_output><empty_output><jupyter_text>Ćwiczenie 95Podany jest poniższy string _playway_raw_ zawierający notowania spółki Playway z marca 2020. ```playway_raw = """Data,Otwarcie,Najwyzszy,Najnizszy,Zamkniecie,Wolumen2020-03-02,305,324.5,283.5,310,640812020-03-03,325.5,340.5,320,340.5,554962020-03-04,324,340.5,315,330,361522020-03-05,344,344,310,315,359922020-03-06,306.5,307,291,305,325392020-03-09,274,291,250,258,794022020-03-10,278,284.5,256,264,357002020-03-11,270,270,238.5,245,604452020-03-12,218,228,196,197,940312020-03-13,210,229,198.8,211,1004122020-03-16,205,248,197.8,240.5,506592020-03-17,245,269,232.5,264,994802020-03-18,264,280,251,270,701362020-03-19,267,280,267,279.5,307322020-03-20,297.5,307,280,280.5,434262020-03-23,274,289,258,285,370982020-03-24,305,309,296.5,309,319392020-03-25,313,330,295,304,467242020-03-26,300,309,295.5,300,272132020-03-27,302,306.5,290,296,134662020-03-30,299,300,287,300,103162020-03-31,302.5,309,302,306.5,15698"""```Utwórz tablicę o nazwie _playway_ i przypisz do niej poniższe dane.<jupyter_code># tutaj wpisz rozwiązanie
playway_raw = """Data,Otwarcie,Najwyzszy,Najnizszy,Zamkniecie,Wolumen
2020-03-02,305,324.5,283.5,310,64081
2020-03-03,325.5,340.5,320,340.5,55496
2020-03-04,324,340.5,315,330,36152
2020-03-05,344,344,310,315,35992
2020-03-06,306.5,307,291,305,32539
2020-03-09,274,291,250,258,79402
2020-03-10,278,284.5,256,264,35700
2020-03-11,270,270,238.5,245,60445
2020-03-12,218,228,196,197,94031
2020-03-13,210,229,198.8,211,100412
2020-03-16,205,248,197.8,240.5,50659
2020-03-17,245,269,232.5,264,99480
2020-03-18,264,280,251,270,70136
2020-03-19,267,280,267,279.5,30732
2020-03-20,297.5,307,280,280.5,43426
2020-03-23,274,289,258,285,37098
2020-03-24,305,309,296.5,309,31939
2020-03-25,313,330,295,304,46724
2020-03-26,300,309,295.5,300,27213
2020-03-27,302,306.5,290,296,13466
2020-03-30,299,300,287,300,10316
2020-03-31,302.5,309,302,306.5,15698"""

lines = playway_raw.splitlines()
lines = [line.split(',') for line in lines]
playway = np.array(lines, dtype=np.str)
playway<jupyter_output><empty_output><jupyter_text>Usuń kolumnę o nazwie 'Data'. Do zmiennej _playway_values_ przypisz tylko warotści kolumn bez nagłówków. Skonwertuj tak otrzymaną tablicę na typ danych _float_.__Oczekiwany wynik:__```array([[   305. ,    324.5,    283.5,    310. ,  64081. ],       [   325.5,    340.5,    320. ,    340.5,  55496. ],       [   324. ,    340.5,    315. ,    330. ,  36152. ],       [   344. ,    344. ,    310. ,    315. ,  35992. ],       [   306.5,    307. ,    291. ,    305. ,  32539. ],       [   274. ,    291. ,    250. ,    258. ,  79402. ],       [   278. ,    284.5,    256. ,    264. ,  35700. ],       [   270. ,    270. ,    238.5,    245. ,  60445. ],       [   218. ,    228. ,    196. ,    197. ,  94031. ],       [   210. ,    229. ,    198.8,    211. , 100412. ],       [   205. ,    248. ,    197.8,    240.5,  50659. ],       [   245. ,    269. ,    232.5,    264. ,  99480. ],       [   264. ,    280. ,    251. ,    270. ,  70136. ],       [   267. ,    280. ,    267. ,    279.5,  30732. ],       [   297.5,    307. ,    280. ,    280.5,  43426. ],       [   274. ,    289. ,    258. ,    285. ,  37098. ],       [   305. ,    309. ,    296.5,    309. ,  31939. ],       [   313. ,    330. ,    295. ,    304. ,  46724. ],       [   300. ,    309. ,    295.5,    300. ,  27213. ],       [   302. ,    306.5,    290. ,    296. ,  13466. ],       [   299. ,    300. ,    287. ,    300. ,  10316. ],       [   302.5,    309. ,    302. ,    306.5,  15698. ]])```<jupyter_code># tutaj wpisz rozwiązanie
playway = np.delete(playway, [0], axis=1)
playway_values = playway[1:].astype(float)
playway_values<jupyter_output><empty_output><jupyter_text>Ćwiczenie 96Dla tablicy _playway_values_ z poprzedniego ćwiczenia policz wartość średnią dla każdej kolumny. Wynik zaokrąglij do 2 miejsca po przecinku.<jupyter_code># tutaj wpisz rozwiązanie
np.round(playway_values.mean(axis=0), 2)<jupyter_output><empty_output><jupyter_text>Dla tablicy _playway_values_ z poprzedniego ćwiczenia policz wartość minimalną dla każdej kolumny. Wynik zaokrąglij do 2 miejsca po przecinku.<jupyter_code># tutaj wpisz rozwiązanie
np.round(playway_values.min(axis=0), 2)<jupyter_output><empty_output><jupyter_text>Dla tablicy _playway_values_ z poprzedniego ćwiczenia policz wartość maksymalną dla każdej kolumny. Wynik zaokrąglij do 2 miejsca po przecinku.<jupyter_code># tutaj wpisz rozwiązanie
np.round(playway_values.max(axis=0), 2)<jupyter_output><empty_output><jupyter_text>Policz różnicę pomiędzy wartością maksymalną i minimalną dla każdej kolumny.<jupyter_code># tutaj wpisz rozwiązanie
playway_values.max(axis=0) - playway_values.min(axis=0)<jupyter_output><empty_output><jupyter_text>Ćwiczenie 97Wykorzystując tablicę _playway_values_ oblicz nową kolumnę będącą różnicą ceny najwyższej i najniższej.Kroki pomocnicze:1. do zmiennej _max_min_diff_ przypisz obliczoną różnicę2. dodaj obliczoną kolumnę (zmienna _max_min_diff_) do tablicy _playway_values_ na końcu.__Oczekiwany wynik:__```array([[   305. ,    324.5,    283.5,    310. ,  64081. ,     41. ],       [   325.5,    340.5,    320. ,    340.5,  55496. ,     20.5],       [   324. ,    340.5,    315. ,    330. ,  36152. ,     25.5],       [   344. ,    344. ,    310. ,    315. ,  35992. ,     34. ],       [   306.5,    307. ,    291. ,    305. ,  32539. ,     16. ],       [   274. ,    291. ,    250. ,    258. ,  79402. ,     41. ],       [   278. ,    284.5,    256. ,    264. ,  35700. ,     28.5],       [   270. ,    270. ,    238.5,    245. ,  60445. ,     31.5],       [   218. ,    228. ,    196. ,    197. ,  94031. ,     32. ],       [   210. ,    229. ,    198.8,    211. , 100412. ,     30.2],       [   205. ,    248. ,    197.8,    240.5,  50659. ,     50.2],       [   245. ,    269. ,    232.5,    264. ,  99480. ,     36.5],       [   264. ,    280. ,    251. ,    270. ,  70136. ,     29. ],       [   267. ,    280. ,    267. ,    279.5,  30732. ,     13. ],       [   297.5,    307. ,    280. ,    280.5,  43426. ,     27. ],       [   274. ,    289. ,    258. ,    285. ,  37098. ,     31. ],       [   305. ,    309. ,    296.5,    309. ,  31939. ,     12.5],       [   313. ,    330. ,    295. ,    304. ,  46724. ,     35. ],       [   300. ,    309. ,    295.5,    300. ,  27213. ,     13.5],       [   302. ,    306.5,    290. ,    296. ,  13466. ,     16.5],       [   299. ,    300. ,    287. ,    300. ,  10316. ,     13. ],       [   302.5,    309. ,    302. ,    306.5,  15698. ,      7. ]])```<jupyter_code># tutaj wpisz rozwiązanie
max_min_diff = playway_values[:, [1]] - playway_values[:, [2]]
playway_values = np.concatenate((playway_values, max_min_diff), axis=1)
playway_values<jupyter_output><empty_output><jupyter_text>Ćwiczenie 98Z tablicy _playway_values_ wytnij wiersze, dla których cena zamknięcia wynosi powyżej 300.00 PLN.<jupyter_code># tutaj wpisz rozwiązanie
playway_values[playway_values[:, 3] > 300]<jupyter_output><empty_output><jupyter_text>Ćwiczenie 99Z tablicy _playway_values_ wytnij 10 pierwszych wierszy z najwyższą wartością wolumenu posortowane malejąco.<jupyter_code># tutaj wpisz rozwiązanie
playway_values[playway_values[:, 4].argsort()[::-1]][:10]<jupyter_output><empty_output><jupyter_text>Ćwiczenie 100Do tablicy _playway_values_ dodaj 7 kolumnę, która będzie zwracać 1 w przypadku, gdy cena zamknięcia jest wyższa niż cena otwarcia oraz 0 przeciwnie.__Oczekiwany wynik:__```array([[   305. ,    324.5,    283.5,    310. ,  64081. ,     41. ,      1. ],       [   325.5,    340.5,    320. ,    340.5,  55496. ,     20.5,      1. ],       [   324. ,    340.5,    315. ,    330. ,  36152. ,     25.5,      1. ],       [   344. ,    344. ,    310. ,    315. ,  35992. ,     34. ,      0. ],       [   306.5,    307. ,    291. ,    305. ,  32539. ,     16. ,      0. ],       [   274. ,    291. ,    250. ,    258. ,  79402. ,     41. ,      0. ],       [   278. ,    284.5,    256. ,    264. ,  35700. ,     28.5,      0. ],       [   270. ,    270. ,    238.5,    245. ,  60445. ,     31.5,      0. ],       [   218. ,    228. ,    196. ,    197. ,  94031. ,     32. ,      0. ],       [   210. ,    229. ,    198.8,    211. , 100412. ,     30.2,      1. ],       [   205. ,    248. ,    197.8,    240.5,  50659. ,     50.2,      1. ],       [   245. ,    269. ,    232.5,    264. ,  99480. ,     36.5,      1. ],       [   264. ,    280. ,    251. ,    270. ,  70136. ,     29. ,      1. ],       [   267. ,    280. ,    267. ,    279.5,  30732. ,     13. ,      1. ],       [   297.5,    307. ,    280. ,    280.5,  43426. ,     27. ,      0. ],       [   274. ,    289. ,    258. ,    285. ,  37098. ,     31. ,      1. ],       [   305. ,    309. ,    296.5,    309. ,  31939. ,     12.5,      1. ],       [   313. ,    330. ,    295. ,    304. ,  46724. ,     35. ,      0. ],       [   300. ,    309. ,    295.5,    300. ,  27213. ,     13.5,      0. ],       [   302. ,    306.5,    290. ,    296. ,  13466. ,     16.5,      0. ],       [   299. ,    300. ,    287. ,    300. ,  10316. ,     13. ,      1. ],       [   302.5,    309. ,    302. ,    306.5,  15698. ,      7. ,      1. ]])```<jupyter_code># tutaj wpisz rozwiązanie
flag = playway_values[:, [0]] < playway_values[:, [3]]
flag = flag.astype(int)
playway_values = np.concatenate((playway_values, flag), axis=1)
playway_values<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.18640366326171187, 'fraction_numerical': 0.26629094751673127, 'mean_word_length': 2.654994850669413, 'pattern_counts': {'":': 0, '<': 67, '<?xml version=': 0, '>': 65, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 24, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '16', 'dir': 'jupyter-structured-clean-dedup', 'id': '29038', 'license': 'CC0-1.0', 'n_tokens_mistral': 8774, 'n_tokens_neox': 6565, 'n_words': 1178, 'path': '01_numpy_cwiczenia/091_100_exercises.ipynb', 'repo_name': 'Sylwiaes/numpy_pandas_cwiczenia', 'size': '14195'}