Ну! Ахуенно же теперь!🔥
Надо строку "Other" убрать из датафрейма. От неё пользы в анализе никакой, только сбивает выборку.
Код и таблица с данными в разных форматах https://www.dropbox.com/sh/79c857xt31w193f/AAA6_qXJJBjUNmuhrFIeKACFa?dl=0
Источник открытых данных:
stat.fi
Конкретно — http://pxnet2.stat.fi/PXWeb/sq/221c3c89-df00-494b-9fa3-acd2b422dbe3
Надо строку "Other" убрать из датафрейма. От неё пользы в анализе никакой, только сбивает выборку.
Код и таблица с данными в разных форматах https://www.dropbox.com/sh/79c857xt31w193f/AAA6_qXJJBjUNmuhrFIeKACFa?dl=0
Источник открытых данных:
stat.fi
Конкретно — http://pxnet2.stat.fi/PXWeb/sq/221c3c89-df00-494b-9fa3-acd2b422dbe3
Выводы по результатам анализа. Спор AND Выборы.
Итак, что даёт моя таблица, и какие выводы можно сделать.
Изначальный тезис виз-а-ви был в том, что «ПОДАВЛЯЮЩЕЕ количество иммигрантов имеют как родной язык — арабский или сомали».
Из собранных данных ФинСтата мы видим обратную картину.
И даже если, как говорила позже виз-а-ви, мы сложим вместе ВСЕ арабские\около-арабские страны, то, всё равно их количество не будет подавляющим, т.к. для правильности подсчёта надо будет также сложить иммигрантов из восточной европы. ВСЕХ.
Ну и ещё отдельно азию\малайзию (раз уж она расистки начала всех южан под одну гребёнку, то можем и всех азиатов под одну гребёнку посчитать)
И как итог — мы наглядно видим, что иммигранты из южных стран мало того, что не в подавляющем большинстве, так ещё и огромная их часть — это ДЕТИ,которые будут расти уже в рамках европейского воспитания (а Финляндия умеет расселять иммигрантов по территории, и беречь себя от образования "национальных гетто" как у Швеции или Германии).
Короч, виват математике и статистике.
С ней расизм не проскочит.
- - - -
Но. Что интересно.
Данные в этой табличке всё равно достаточно большие, чтобы националистическая партия Perus Suomalaiset, которые идут прям рядышком с лидирующей партией Социал-Демократов, могли использовать их для манипулцяии общественным мнением.
Т.е. если скинуть её тем ребятам, они точно найдут ей прикладное в агитации и борьбе за голоса на выборах применение.
Вот так анализ простейших открытых данных может помочь победить в споре, или выиграть голоса на выборах. А они даже не знают об этом))) У них культура работы с открытыми данными (и данными вообще) не очень развита, но сильно развита культура СБОРА И ПУБЛИКАЦИИ данных.
Итак, что даёт моя таблица, и какие выводы можно сделать.
Изначальный тезис виз-а-ви был в том, что «ПОДАВЛЯЮЩЕЕ количество иммигрантов имеют как родной язык — арабский или сомали».
Из собранных данных ФинСтата мы видим обратную картину.
И даже если, как говорила позже виз-а-ви, мы сложим вместе ВСЕ арабские\около-арабские страны, то, всё равно их количество не будет подавляющим, т.к. для правильности подсчёта надо будет также сложить иммигрантов из восточной европы. ВСЕХ.
Ну и ещё отдельно азию\малайзию (раз уж она расистки начала всех южан под одну гребёнку, то можем и всех азиатов под одну гребёнку посчитать)
И как итог — мы наглядно видим, что иммигранты из южных стран мало того, что не в подавляющем большинстве, так ещё и огромная их часть — это ДЕТИ,которые будут расти уже в рамках европейского воспитания (а Финляндия умеет расселять иммигрантов по территории, и беречь себя от образования "национальных гетто" как у Швеции или Германии).
Короч, виват математике и статистике.
С ней расизм не проскочит.
- - - -
Но. Что интересно.
Данные в этой табличке всё равно достаточно большие, чтобы националистическая партия Perus Suomalaiset, которые идут прям рядышком с лидирующей партией Социал-Демократов, могли использовать их для манипулцяии общественным мнением.
Т.е. если скинуть её тем ребятам, они точно найдут ей прикладное в агитации и борьбе за голоса на выборах применение.
Вот так анализ простейших открытых данных может помочь победить в споре, или выиграть голоса на выборах. А они даже не знают об этом))) У них культура работы с открытыми данными (и данными вообще) не очень развита, но сильно развита культура СБОРА И ПУБЛИКАЦИИ данных.
Когда у тебя есть гипотеза, и ты под неё ищешь и собираешь данные, порядок действий в целом понятен.
Но часто, ты получаешь вагон данных, и ебись с ними как хочешь.
И «что именно искать» может быть не понятно, т.к. ты можешь не знать специфику индустрии.
Но как-то же подступиться надо.
Соответственно возник вопрос — как подступиться к собранным данным, если ты толком не подозреваешь, ЧТО ИМЕННО в них искать.
Но часто, ты получаешь вагон данных, и ебись с ними как хочешь.
И «что именно искать» может быть не понятно, т.к. ты можешь не знать специфику индустрии.
Но как-то же подступиться надо.
Соответственно возник вопрос — как подступиться к собранным данным, если ты толком не подозреваешь, ЧТО ИМЕННО в них искать.
Пошёл с этим вопросом в ODS коммьюнити https://ods.ai/ (давно к ним вписался, поглядывал одним глазом).
Спросил — с чего начать работу с добытыми данными, как подступиться, и т.д. когда нет гипотезы исходной.
Получил советы:
«можно и из данных искать гипотезы. Берешь датасет, делаешь на нем EDA анализ (на каггле для примера можно взять с кодом, из любого табличного соревнования).
Видишь на результатах EDA какие-то странности/закономерности/etc -> делаешь гипотезы -> копаешь глубже.»
«обычно все же правда идут от гипотез и их проверяют в данных. обратный процесс всегда похож на поиск золота в случайном речном песке - может, что-то и найдешь, но перед этим сто раз пожалеешь, что ввязался.
но если все же хочется поработать старателем, то как сказал @(автор коммента выше), сначала эксплораторный анализ, описательные статистики. если есть группировки - то по группировкам. если данные во времени - то наличие выбросов, тренды и автокорреляции и т.д.
потом, может быть, редукция данных (но тут надо смотреть на содержание колонок уже).
впрочем, я обычно смотрю вообще примитивно, на мета-уровень - что за данные (банально, название колонок и их описание, если есть), типы шкал в колонках (все чарами, все 0/1, или есть интервальные), сколько этих данных и какая их гранулярность, насколько эти данные кажутся полными (например, если есть название фильма, но нет режиссера - кажется, плохие данные) и т.д»
Спросил — с чего начать работу с добытыми данными, как подступиться, и т.д. когда нет гипотезы исходной.
Получил советы:
«можно и из данных искать гипотезы. Берешь датасет, делаешь на нем EDA анализ (на каггле для примера можно взять с кодом, из любого табличного соревнования).
Видишь на результатах EDA какие-то странности/закономерности/etc -> делаешь гипотезы -> копаешь глубже.»
«обычно все же правда идут от гипотез и их проверяют в данных. обратный процесс всегда похож на поиск золота в случайном речном песке - может, что-то и найдешь, но перед этим сто раз пожалеешь, что ввязался.
но если все же хочется поработать старателем, то как сказал @(автор коммента выше), сначала эксплораторный анализ, описательные статистики. если есть группировки - то по группировкам. если данные во времени - то наличие выбросов, тренды и автокорреляции и т.д.
потом, может быть, редукция данных (но тут надо смотреть на содержание колонок уже).
впрочем, я обычно смотрю вообще примитивно, на мета-уровень - что за данные (банально, название колонок и их описание, если есть), типы шкал в колонках (все чарами, все 0/1, или есть интервальные), сколько этих данных и какая их гранулярность, насколько эти данные кажутся полными (например, если есть название фильма, но нет режиссера - кажется, плохие данные) и т.д»
Forwarded from 🗞 Виз Ньюз
This media is not supported in your browser
VIEW IN TELEGRAM
📖 Мелани Уолш (Melanie Walsh) выложила интерактивный учебник своего курса культурной аналитики о том, как освоить Python с нуля и использовать его для анализа культурных данных.
Прекрасный ресурс, на мой вгзляд!
https://melaniewalsh.github.io/Intro-Cultural-Analytics/welcome.html
Прекрасный ресурс, на мой вгзляд!
https://melaniewalsh.github.io/Intro-Cultural-Analytics/welcome.html
Капец у меня башка кипит. Исчесал документацию вдоль и поперёк. Нет более подробной инфы.
Обшарил ютуб и гугл. Нет подходящего ответа, либо через колено делают, либо не на питоне.
Вот так, чтоб как в документации - нет нигде примера.
Ох блять.
Вторые сутки потеряны. Впереди выходные, и вместо отдыха - буду навёрстывать упущенное время, потому что время не в мою пользу сейчас. И надо максимально наверстать эти два дня и дать результат ещё и наперёд, чтоб компенсировать потерю времени.
- - - -
Важно - простейшие функции отрабатывают. Всё ок, Яндекс.Функция стартует, и делает return нужного значения.
Работаю над усложнением. Чтобы импортировала модули и ими обрабатывала простейшую команду.
Обшарил ютуб и гугл. Нет подходящего ответа, либо через колено делают, либо не на питоне.
Вот так, чтоб как в документации - нет нигде примера.
Ох блять.
Вторые сутки потеряны. Впереди выходные, и вместо отдыха - буду навёрстывать упущенное время, потому что время не в мою пользу сейчас. И надо максимально наверстать эти два дня и дать результат ещё и наперёд, чтоб компенсировать потерю времени.
- - - -
Важно - простейшие функции отрабатывают. Всё ок, Яндекс.Функция стартует, и делает return нужного значения.
Работаю над усложнением. Чтобы импортировала модули и ими обрабатывала простейшую команду.
Интересный опыт работы с этим облаком.
Теперь становится понятно, что не всегда его ОШИБКА, это прям ошибка.
Обрати внимание - на тестировании функции, в ответе функция возвращает ДЖСОН. Всё окей, всё как надо, другие ИДЕ возвращают ДЖСОН именно так.
Но, при попытке вызвать функцию ЧЕРЕЗ ССЫЛКУ ВЫЗОВА В БРАУЗЕРЕ, выпадает ошибка 502.
Теперь, у меня явное подозрение, что прошлая ошибка, с которой я столкнулся в прошлом посте - вызвана скорее всего вот такой разницей восприятия ответа внутри Яндекс.Облака.
Потому что НУ НЕ МОЖЕТ ИТЕРИРУЕМЫЙ ЛИСТ вдруг на ровном месте начать считаться не итерируемым.
Окей. Отлично. Теперь можно идти спать, завтра хотя бы понятно, куда копать.
Теперь становится понятно, что не всегда его ОШИБКА, это прям ошибка.
Обрати внимание - на тестировании функции, в ответе функция возвращает ДЖСОН. Всё окей, всё как надо, другие ИДЕ возвращают ДЖСОН именно так.
Но, при попытке вызвать функцию ЧЕРЕЗ ССЫЛКУ ВЫЗОВА В БРАУЗЕРЕ, выпадает ошибка 502.
Теперь, у меня явное подозрение, что прошлая ошибка, с которой я столкнулся в прошлом посте - вызвана скорее всего вот такой разницей восприятия ответа внутри Яндекс.Облака.
Потому что НУ НЕ МОЖЕТ ИТЕРИРУЕМЫЙ ЛИСТ вдруг на ровном месте начать считаться не итерируемым.
Окей. Отлично. Теперь можно идти спать, завтра хотя бы понятно, куда копать.
Отлично. Функция работает полностью, в не упрощённом режиме.
Ошибка? Да, есть ошибка с тем, что система в "только для чтения" режиме находится. Но это поправимо.
Куда важнее — что Яндекс.Функция на облаке работает, возвращает значения как надо, и даже пытается вернуть мне записанный цсв файл, но пока не может (т.к. прав на запись нет). А значит отрабатывает она свою задачу великолепно.
Ура! Я победил Облачные Функции.
Мишшен Комлитед!🚬😏
(на самом деле нет ещё, т.к. надо сделать отдачу файла\запись файла, но это уже задача второй важности)
Ошибка? Да, есть ошибка с тем, что система в "только для чтения" режиме находится. Но это поправимо.
Куда важнее — что Яндекс.Функция на облаке работает, возвращает значения как надо, и даже пытается вернуть мне записанный цсв файл, но пока не может (т.к. прав на запись нет). А значит отрабатывает она свою задачу великолепно.
Ура! Я победил Облачные Функции.
Мишшен Комлитед!🚬😏
(на самом деле нет ещё, т.к. надо сделать отдачу файла\запись файла, но это уже задача второй важности)
Каааароче.
Решения у задачи ДВА. Или три.
1. Сделать экспорт pandas-датафрейма в Google Sheets;
2. Сделать ход конём через колено — «скачивание объекта из хранилища», редактура его в памяти и «загрузка объекта в хранилище». Это пиздец долго и неудобно делать будет, но как вариант вполне;
3. Вывод данных куда-то ещё (на сайт, в Таблё, в Гугл Дата Студио, куда угодно короче. Хоть в бэкенд у десктопного приложения, чтобы уже стационарно сохранить файл и вывести данные в стационарном приложении на компе на экран в виде графиков, например;
Решения у задачи ДВА. Или три.
1. Сделать экспорт pandas-датафрейма в Google Sheets;
2. Сделать ход конём через колено — «скачивание объекта из хранилища», редактура его в памяти и «загрузка объекта в хранилище». Это пиздец долго и неудобно делать будет, но как вариант вполне;
3. Вывод данных куда-то ещё (на сайт, в Таблё, в Гугл Дата Студио, куда угодно короче. Хоть в бэкенд у десктопного приложения, чтобы уже стационарно сохранить файл и вывести данные в стационарном приложении на компе на экран в виде графиков, например;
Итак, функция в облаке работает исправно.
Триггер «Таймер» работает исправно.
Значит теперь заворачиваю всё это в инструкцию (поделиться не могу, это рабочий продукт, негласный NDA и т.д.)
Но, облако свою задачу выполняет. Осталось это описать, чтобы любой участник в команде смог повторить.
Триггер «Таймер» работает исправно.
Значит теперь заворачиваю всё это в инструкцию (поделиться не могу, это рабочий продукт, негласный NDA и т.д.)
Но, облако свою задачу выполняет. Осталось это описать, чтобы любой участник в команде смог повторить.