{"id":3060,"date":"2023-07-19T09:55:30","date_gmt":"2023-07-19T09:55:30","guid":{"rendered":"https:\/\/statorials.org\/pl\/strajk-r\/"},"modified":"2023-07-19T09:55:30","modified_gmt":"2023-07-19T09:55:30","slug":"strajk-r","status":"publish","type":"post","link":"https:\/\/statorials.org\/pl\/strajk-r\/","title":{"rendered":"Jak u\u017cywa\u0107 smote do niezr\u00f3wnowa\u017conych danych w r (z przyk\u0142adem)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\"><span style=\"color: #000000;\">Cz\u0119sto podczas pracy z <a href=\"https:\/\/statorials.org\/pl\/regresja-a-klasyfikacja\/\" target=\"_blank\" rel=\"noopener\">algorytmami klasyfikacji<\/a> uczenia maszynowego klasy w zbiorze danych b\u0119d\u0105 niezr\u00f3wnowa\u017cone.<\/span><\/span><\/p>\n<p> <span style=\"color: #000000;\">Na przyk\u0142ad:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">Zbi\u00f3r danych zawieraj\u0105cy informacje o tym, czy gracze z college&#8217;u zostali powo\u0142ani do NBA, mo\u017ce wskazywa\u0107, \u017ce 98% graczy nie zosta\u0142o wybranych, a 2% zosta\u0142o powo\u0142anych.<\/span><\/li>\n<li> <span style=\"color: #000000;\">Zbi\u00f3r danych zawieraj\u0105cy informacje na temat tego, czy pacjenci maj\u0105 raka, mo\u017ce zawiera\u0107 99% pacjent\u00f3w bez raka i tylko 1% z rakiem.<\/span><\/li>\n<li> <span style=\"color: #000000;\">Zbi\u00f3r danych zawieraj\u0105cy informacje o oszustwach bankowych mo\u017ce zawiera\u0107 96% transakcji legalnych i 4% transakcji fa\u0142szywych.<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Z powodu tych niezr\u00f3wnowa\u017conych klas zbudowany model predykcyjny mo\u017ce nie dzia\u0142a\u0107 dobrze w klasie mniejszo\u015bci.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Co gorsza, cz\u0119sto najbardziej chcemy przewidzie\u0107 klas\u0119 mniejszo\u015bci.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Jednym ze sposob\u00f3w rozwi\u0105zania tego problemu braku r\u00f3wnowagi jest zastosowanie <strong>techniki syntetycznego nadpr\u00f3bkowania mniejszo\u015bci<\/strong> , cz\u0119sto w skr\u00f3cie <strong>SMOTE<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Technika ta polega na utworzeniu nowego zbioru danych poprzez nadpr\u00f3bkowanie obserwacji z klasy mniejszo\u015bci, co daje zbi\u00f3r danych z bardziej zr\u00f3wnowa\u017conymi klasami.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Naj\u0142atwiejszym sposobem u\u017cycia SMOTE w R jest u\u017cycie funkcji <strong>SMOTE()<\/strong> z pakietu <strong>DMwR<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Ta funkcja wykorzystuje nast\u0119puj\u0105c\u0105 podstawow\u0105 sk\u0142adni\u0119:<\/span><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong>SMOTE(form, data, perc. <span style=\"color: #3366ff;\">over<\/span> = <span style=\"color: #008000;\">200<\/span> , perc. <span style=\"color: #3366ff;\">under<\/span> = <span style=\"color: #008000;\">200<\/span> , ...)\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Z\u0142oto:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\"><strong>formularz<\/strong> : Formu\u0142a opisuj\u0105ca model, kt\u00f3ry chcesz dostosowa\u0107<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>dane<\/strong> : Nazwa ramki danych<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>perc.over<\/strong> : Liczba okre\u015blaj\u0105ca, ile dodatkowych przypadk\u00f3w klasy mniejszo\u015bci jest generowanych<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>perc.under<\/strong> : Liczba okre\u015blaj\u0105ca, ile dodatkowych przypadk\u00f3w klasy wi\u0119kszo\u015bci jest generowanych<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Poni\u017cszy przyk\u0142ad pokazuje, jak w praktyce wykorzysta\u0107 t\u0119 funkcj\u0119.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Przyk\u0142ad: Jak u\u017cywa\u0107 SMOTE w R<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Za\u0142\u00f3\u017cmy, \u017ce mamy nast\u0119puj\u0105cy zbi\u00f3r danych zawieraj\u0105cy 100 <a href=\"https:\/\/statorials.org\/pl\/obserwacja-w-statystyce\/\" target=\"_blank\" rel=\"noopener\">obserwacji<\/a> w R, z kt\u00f3rych 90 ma klas\u0119 \u201eTak\u201d, a 10 ma klas\u0119 \u201eNie\u201d dla zmiennej odpowiedzi:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seed<\/span> ( <span style=\"color: #008000;\">0<\/span> )\n\n<span style=\"color: #008080;\">#create data frame with one response variable and two predictor variables\n<\/span>df &lt;- data. <span style=\"color: #3366ff;\">frame<\/span> (y=rep(as. <span style=\"color: #3366ff;\">factor<\/span> (c(' <span style=\"color: #ff0000;\">Yes<\/span> ', ' <span style=\"color: #ff0000;\">No<\/span> ')), times=c( <span style=\"color: #008000;\">90<\/span> , <span style=\"color: #008000;\">10<\/span> )),\n                 x1=rnorm( <span style=\"color: #008000;\">100<\/span> ),\n                 x2=rnorm( <span style=\"color: #008000;\">100<\/span> ))\n\n<span style=\"color: #008080;\">#view first six rows of data frame\n<\/span>head(df)\n\n    y x1 x2\n1 Yes 1.2629543 0.7818592\n2 Yes -0.3262334 -0.7767766\n3 Yes 1.3297993 -0.6159899\n4 Yes 1.2724293 0.0465803\n5 Yes 0.4146414 -1.1303858\n6 Yes -1.5399500 0.5767188\n \n<span style=\"color: #008080;\">#view distribution of response variable\n<\/span>table(df$y)\n\n Drowned \n 10 90<\/strong><\/pre>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Jest to klasyczny przyk\u0142ad niezr\u00f3wnowa\u017conego zbioru danych, poniewa\u017c przewidywana przez nas zmienna odpowiedzi ma 90 obserwacji z klas\u0105 \u201eTak\u201d i tylko 10 obserwacji z klas\u0105 \u201eNie\u201d.<\/span><\/span><\/p>\n<p> <span style=\"color: #000000;\">Aby stworzy\u0107 bardziej zr\u00f3wnowa\u017cony zbi\u00f3r danych, mo\u017cemy skorzysta\u0107 z funkcji <strong>SMOTE()<\/strong> z pakietu <strong>DMwR<\/strong> :<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008000;\">library<\/span> ( <span style=\"color: #000000;\">DMwR)\n\n<\/span><span style=\"color: #008080;\">#use SMOTE to create new dataset that is more balanced\n<\/span>new_df &lt;- SMOTE(y ~ ., df, perc. <span style=\"color: #3366ff;\">over<\/span> = <span style=\"color: #008000;\">2000<\/span> , perc. <span style=\"color: #3366ff;\">under<\/span> = <span style=\"color: #008000;\">400<\/span> )\n\n<span style=\"color: #008080;\">#view distribution of response variable in new dataset\n<\/span>table(new_df$y)\n\n Drowned \n210,800\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Powsta\u0142y zbi\u00f3r danych zawiera 210 obserwacji z klas\u0105 \u201eNie\u201d i 800 obserwacji z klas\u0105 \u201eTak\u201d.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Oto dok\u0142adnie, w jaki spos\u00f3b funkcja SMOTE utworzy\u0142a ten nowy zestaw danych:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">Argument <strong>perc.over<\/strong> okre\u015bla\u0142, \u017ce chcemy doda\u0107 2000\/100 (lub 20) razy liczb\u0119 istniej\u0105cych obserwacji mniejszo\u015bciowych do zbioru danych. Poniewa\u017c w oryginalnym zbiorze danych istnia\u0142o 10 obserwacji, dodali\u015bmy 20*10 = <strong>200 dodatkowych obserwacji mniejszo\u015bciowych<\/strong> .<\/span><\/li>\n<li> <span style=\"color: #000000;\">Argument <strong>perc.under<\/strong> okre\u015bla\u0142, \u017ce chcemy, aby liczba obserwacji wi\u0119kszo\u015bci by\u0142a r\u00f3wna 400\/100 (lub 4) razy liczba obserwacji mniejszo\u015bci dodanych do istniej\u0105cych obserwacji mniejszo\u015bci. Poniewa\u017c dodano 200 dodatkowych obserwacji mniejszo\u015bci, liczba obserwacji wi\u0119kszo\u015bci by\u0142a r\u00f3wna 200 * 4 = <strong>800 obserwacji wi\u0119kszo\u015bci<\/strong> .<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Efektem ko\u0144cowym jest zbi\u00f3r danych, kt\u00f3ry nadal zawiera wi\u0119cej klas wi\u0119kszo\u015bciowych, ale nadal jest bardziej zr\u00f3wnowa\u017cony ni\u017c oryginalny zbi\u00f3r danych.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Mo\u017cesz teraz dostosowa\u0107 wybrany algorytm klasyfikacji do tego nowego zbioru danych, kt\u00f3ry powinien dzia\u0142a\u0107 lepiej w przypadku klasy mniejszo\u015bci, poniewa\u017c w tym nowym zbiorze danych znajduje si\u0119 wi\u0119cej obserwacji z klasy mniejszo\u015bci.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Uwaga<\/strong> : mo\u017cesz pobawi\u0107 si\u0119 argumentami <strong>perc.over<\/strong> i <strong>perc.under<\/strong> w funkcji SMOTE, aby uzyska\u0107 zbi\u00f3r danych odpowiadaj\u0105cy Twoim potrzebom.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Dodatkowe zasoby<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Poni\u017csze samouczki wyja\u015bniaj\u0105, jak wykonywa\u0107 inne typowe zadania w j\u0119zyku R:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/pl\/tabela-podsumowujaca-w-r\/\" target=\"_blank\" rel=\"noopener\">Jak utworzy\u0107 tabele podsumowuj\u0105ce w R<\/a><br \/> <a href=\"https:\/\/statorials.org\/pl\/jak-normalizowac-dane-w-r\/\" target=\"_blank\" rel=\"noopener\">Jak normalizowa\u0107 dane w R<\/a><br \/> <a href=\"https:\/\/statorials.org\/pl\/usun-wartosci-odstajace-r\/\" target=\"_blank\" rel=\"noopener\">Jak usun\u0105\u0107 warto\u015bci odstaj\u0105ce w R<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cz\u0119sto podczas pracy z algorytmami klasyfikacji uczenia maszynowego klasy w zbiorze danych b\u0119d\u0105 niezr\u00f3wnowa\u017cone. Na przyk\u0142ad: Zbi\u00f3r danych zawieraj\u0105cy informacje o tym, czy gracze z college&#8217;u zostali powo\u0142ani do NBA, mo\u017ce wskazywa\u0107, \u017ce 98% graczy nie zosta\u0142o wybranych, a 2% zosta\u0142o powo\u0142anych. Zbi\u00f3r danych zawieraj\u0105cy informacje na temat tego, czy pacjenci maj\u0105 raka, mo\u017ce zawiera\u0107 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-3060","post","type-post","status-publish","format-standard","hentry","category-przewodnik"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R (z przyk\u0142adem) - Statoriale<\/title>\n<meta name=\"description\" content=\"W tym samouczku wyja\u015bniono, jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R, \u0142\u0105cznie z pe\u0142nym przyk\u0142adem.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/statorials.org\/pl\/strajk-r\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R (z przyk\u0142adem) - Statoriale\" \/>\n<meta property=\"og:description\" content=\"W tym samouczku wyja\u015bniono, jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R, \u0142\u0105cznie z pe\u0142nym przyk\u0142adem.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/pl\/strajk-r\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-19T09:55:30+00:00\" \/>\n<meta name=\"author\" content=\"Benjamin Anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin Anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minuty\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/pl\/strajk-r\/\",\"url\":\"https:\/\/statorials.org\/pl\/strajk-r\/\",\"name\":\"Jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R (z przyk\u0142adem) - Statoriale\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/pl\/#website\"},\"datePublished\":\"2023-07-19T09:55:30+00:00\",\"dateModified\":\"2023-07-19T09:55:30+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/pl\/#\/schema\/person\/6484727a4612df3e69f016c3129c6965\"},\"description\":\"W tym samouczku wyja\u015bniono, jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R, \u0142\u0105cznie z pe\u0142nym przyk\u0142adem.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/pl\/strajk-r\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/pl\/strajk-r\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/pl\/strajk-r\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Dom\",\"item\":\"https:\/\/statorials.org\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Jak u\u017cywa\u0107 smote do niezr\u00f3wnowa\u017conych danych w r (z przyk\u0142adem)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/pl\/#website\",\"url\":\"https:\/\/statorials.org\/pl\/\",\"name\":\"Statorials\",\"description\":\"Tw\u00f3j przewodnik po kompetencjach statystycznych!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/pl\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/pl\/#\/schema\/person\/6484727a4612df3e69f016c3129c6965\",\"name\":\"Benjamin Anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/statorials.org\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/statorials.org\/pl\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"https:\/\/statorials.org\/pl\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg\",\"caption\":\"Benjamin Anderson\"},\"description\":\"Cze\u015b\u0107, jestem Benjamin i jestem emerytowanym profesorem statystyki, kt\u00f3ry zosta\u0142 oddanym nauczycielem Statorials. Dzi\u0119ki bogatemu do\u015bwiadczeniu i wiedzy specjalistycznej w dziedzinie statystyki ch\u0119tnie dziel\u0119 si\u0119 swoj\u0105 wiedz\u0105, aby wzmocni\u0107 pozycj\u0119 uczni\u00f3w za po\u015brednictwem Statorials. Wiedzie\u0107 wi\u0119cej\",\"sameAs\":[\"https:\/\/statorials.org\/pl\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R (z przyk\u0142adem) - Statoriale","description":"W tym samouczku wyja\u015bniono, jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R, \u0142\u0105cznie z pe\u0142nym przyk\u0142adem.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/statorials.org\/pl\/strajk-r\/","og_locale":"pl_PL","og_type":"article","og_title":"Jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R (z przyk\u0142adem) - Statoriale","og_description":"W tym samouczku wyja\u015bniono, jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R, \u0142\u0105cznie z pe\u0142nym przyk\u0142adem.","og_url":"https:\/\/statorials.org\/pl\/strajk-r\/","og_site_name":"Statorials","article_published_time":"2023-07-19T09:55:30+00:00","author":"Benjamin Anderson","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"Benjamin Anderson","Szacowany czas czytania":"3 minuty"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/pl\/strajk-r\/","url":"https:\/\/statorials.org\/pl\/strajk-r\/","name":"Jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R (z przyk\u0142adem) - Statoriale","isPartOf":{"@id":"https:\/\/statorials.org\/pl\/#website"},"datePublished":"2023-07-19T09:55:30+00:00","dateModified":"2023-07-19T09:55:30+00:00","author":{"@id":"https:\/\/statorials.org\/pl\/#\/schema\/person\/6484727a4612df3e69f016c3129c6965"},"description":"W tym samouczku wyja\u015bniono, jak u\u017cywa\u0107 SMOTE do niezr\u00f3wnowa\u017conych danych w R, \u0142\u0105cznie z pe\u0142nym przyk\u0142adem.","breadcrumb":{"@id":"https:\/\/statorials.org\/pl\/strajk-r\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/pl\/strajk-r\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/pl\/strajk-r\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Dom","item":"https:\/\/statorials.org\/pl\/"},{"@type":"ListItem","position":2,"name":"Jak u\u017cywa\u0107 smote do niezr\u00f3wnowa\u017conych danych w r (z przyk\u0142adem)"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/pl\/#website","url":"https:\/\/statorials.org\/pl\/","name":"Statorials","description":"Tw\u00f3j przewodnik po kompetencjach statystycznych!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/pl\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pl-PL"},{"@type":"Person","@id":"https:\/\/statorials.org\/pl\/#\/schema\/person\/6484727a4612df3e69f016c3129c6965","name":"Benjamin Anderson","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/statorials.org\/pl\/#\/schema\/person\/image\/","url":"https:\/\/statorials.org\/pl\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg","contentUrl":"https:\/\/statorials.org\/pl\/wp-content\/uploads\/2023\/11\/Benjamin-Anderson-96x96.jpg","caption":"Benjamin Anderson"},"description":"Cze\u015b\u0107, jestem Benjamin i jestem emerytowanym profesorem statystyki, kt\u00f3ry zosta\u0142 oddanym nauczycielem Statorials. Dzi\u0119ki bogatemu do\u015bwiadczeniu i wiedzy specjalistycznej w dziedzinie statystyki ch\u0119tnie dziel\u0119 si\u0119 swoj\u0105 wiedz\u0105, aby wzmocni\u0107 pozycj\u0119 uczni\u00f3w za po\u015brednictwem Statorials. Wiedzie\u0107 wi\u0119cej","sameAs":["https:\/\/statorials.org\/pl"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/posts\/3060","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/comments?post=3060"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/posts\/3060\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/media?parent=3060"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/categories?post=3060"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/pl\/wp-json\/wp\/v2\/tags?post=3060"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}