ブックマーク / qiita.com (165)

  • 2024年最新版:Pythonデータ解析ライブラリ総まとめ - 実践的ガイド - Qiita

    はじめに Pythonのデータ解析エコシステムは日々進化を続けています。2024年現在、効率的なデータ処理、直感的な可視化、高度な機械学習の自動化など、様々な新しいツールが登場しています。記事では、最新のPythonデータ解析ライブラリを紹介し、それぞれの特徴や使用例、実際のユースケース、そして導入方法まで詳しく解説します。 1. データ操作ライブラリ 1.1 Polars: 高速データ処理の新標準 Polarsは、Rustで実装された高速なデータ操作ライブラリです。pandasに似たAPIを持ちながら、大規模データセットでより高速に動作します。 特徴: 高速な処理速度 メモリ効率が良い pandasに似たAPI 使用例: import polars as pl # CSVファイルの読み込み df = pl.read_csv("large_dataset.csv") # データのフィルタ

    2024年最新版:Pythonデータ解析ライブラリ総まとめ - 実践的ガイド - Qiita
  • レコメンドアルゴリズム入門:基礎から応用まで実装に必要な知識を解説 - Qiita

    1: 購入 0: 閲覧(したが購入してない) -: 未観測 ユーザーベース型 ユーザー同士の類似度を計算 「あなたと購入履歴の似たユーザーはこんな商品を買っています」 行を各ユーザーのベクトルとみなして、似たユーザーを見つける(上位N人) 似たユーザーが購入しているアイテムを推薦する(N人の平均値などで購入しそうな順に提示) アイテムベース型 アイテム同士の類似度を計算 「この商品を買ったユーザーはこんな商品も買ってます」 列を各アイテムのベクトルとみなして、類似度の高いアイテムを推薦する(上位M件) 類似度計算には、コサイン類似度やJaccard類似度が使われる。 類似度を計算する際に、未観測「-」は適当な値(0, 0.5など)で埋めるか、無視をする。 ログデータを使うため、情報の少ない新規アイテム/新規ユーザーに弱いコールドスタート問題がある。 コンテンツベースフィルタリング アイテム

    レコメンドアルゴリズム入門:基礎から応用まで実装に必要な知識を解説 - Qiita
  • GPT-3.5-TurboとGPT-4-Turbo、Claude2、Claude3(Haiku)、Claude3(Sonnet)、Claude3(Opus)、Gemini Pro、Gemini Ultraに同じ質問をして、回答結果を比較してみた - Qiita

    GPT-3.5-TurboとGPT-4-Turbo、Claude2、Claude3(Haiku)、Claude3(Sonnet)、Claude3(Opus)、Gemini Pro、Gemini Ultraに同じ質問をして、回答結果を比較してみたPythonAWSAzureOpenAIGoogleCloud はじめに GPT-3.5-TurboとGPT-4-Turbo、Claude2、Claude3(Haiku)、Claude3(Sonnet)、Claude3(Opus)、Gemini Pro、Gemini Ultra(Gemini Advanced)に同じ質問をして、回答結果を比較してみました。 Gemini Ultra以外のモデルはPythonコード上から実行し、Gemini UltraはGemini Advancedのチャット上で実行しています。 各モデルの詳細は以下のとおりです。 G

    GPT-3.5-TurboとGPT-4-Turbo、Claude2、Claude3(Haiku)、Claude3(Sonnet)、Claude3(Opus)、Gemini Pro、Gemini Ultraに同じ質問をして、回答結果を比較してみた - Qiita
    Ez-style
    Ez-style 2024/03/06
    因数分解ができるのに、ただの乗算が不正解なのは何でだ。。。しかもモデルによって微妙に違うし。
  • 1100万行・32GB超の巨大CSVファイルの基本統計量を4GBメモリマシンで算出する - Qiita

    はじめに この記事は,Kaggle Advent Calendar 2022第6日目の記事になります。 記事では、 32GB超のCSVデータの基統計量を、小規模マシンでも省メモリかつ高速に計算するテクニック について解説します。 Kaggleコンペに限らず、 マシンスペックが低いため、大きなデータセットを満足に処理できず困っている 毎回行うファイル読み込みが遅いので、もっと高速化したい ⚡ といった悩みや課題を抱えている方の参考になれば幸いです。 モチベーション データ分析業務やKaggle等のコンペティションで初めてのデータセットを扱う場合、いきなり機械学習アルゴリズムを行うことはまず無く、最初にデータ観察を行うのが一般的です。 テーブルデータであれば、各カラムの基統計量(最小値、最大値、平均、分散、四分位数)などを計算・可視化し、データクレンジングの要否や特徴量設計の方針などを検

    1100万行・32GB超の巨大CSVファイルの基本統計量を4GBメモリマシンで算出する - Qiita
    Ez-style
    Ez-style 2023/06/06
    業務で作業するならBQに突っ込めでFAとして、CSVの基本統計量を計算するだけなら grep と awk という手段が(老人会脳 / 身も蓋もないことをいえば、アタリをみたいだけならランダムサンプリングすればよくね。
  • DynamoDBの難しさについて - Qiita

    はじめに DynamoDBは上手く使えば非常に強力なDBMSですがRDBとの違いは大きく、「RDBの代わりにDynamoDBを使おう!」と深く考えずに提案/採用することが難しいことから、その理由についてみていきます。 DynaomoDBの難しさ DynamoDBの利点と表裏一体である、DynaomDBの主要な難しさについて順番に見ていきます。 1. 提供されているクエリモデルでできることが非常に限定されている DynamoDBは次の公式サイトに記載がある通り、どんな規模でも数msの一定のパフォーマンスを発揮でき、無尽蔵にスケールできるという特徴があります。 Fast, flexible NoSQL database service for single-digit millisecond performance at any scale この特性を上手く活用すると次の実例のように高可用性、

    DynamoDBの難しさについて - Qiita
  • 【2022年版ベストプラクティス】AWS IAMまとめ - Qiita

    はじめに AWSのアクセス制御サービスであるIAMについて、2022年7月時点での機能および使用法を、初学者でも理解しやすいことを心掛けてまとめました。 IAMをよく分からないまま適当に設定するとセキュリティ的にまずいので、これを機に設定を見直して頂き、セキュリティレベル向上に貢献できれば幸いです。 特に、後述するIAM設定手順は、AWSに登録して最初に実施すべき設定に相当するため、セキュリティに興味がなくとも一度は実施することをお勧めします。 また公式のベストプラクティスは丁寧にまとめたつもりなので、初学者以外でもAWSセキュリティ確保に興味がある方は、ぜひご一読頂けると嬉しいです。 IAMとは 「Identity and Access Management」の略です。 公式ドキュメントによると、IAMは「誰」が「どのAWSのサービスやリソース」に「どのような条件」でアクセスできるかを

    【2022年版ベストプラクティス】AWS IAMまとめ - Qiita
  • DynamoDB の設計について考えてみる。 - Qiita

    Amazon DynamoDB の特性 フルマネージド型の NoSQL データベースサービス 3つの Availability Zone に保存されるので信頼性が高い 性能要件に応じて、テーブルごとにスループットキャパシティを定義するキャパシティの Auto Scaling、オンデマンドキャパシティといった設定も可能 ストレージの容量制限がない DynamoDB のテーブル DynamoDB におけるテーブルはRDBMSにおけるテーブルと概念が異なります。 テーブルを作成する際に、Primary Key を指定する必要があります。 Primary Key はテーブルの各項目を一意に識別するために使います。Primary Key は、Partition Key および Sort Key で構成されます。(Sort KeyがなくPartition Keyのみの場合もあります) Item は R

    DynamoDB の設計について考えてみる。 - Qiita
  • 個人学習で書くコードはpublic公開した方がよい理由 - Qiita

    はじめに コロナ禍の影響で、エンジニア転職が増えてるという肌感です。 私もまったくの異業種からの転職でこの業界にきました。 昔の自分に会えたらこう言ってあげたいという思いをポエムとしてまとめましたので一つの記事としたいと思います。 この記事が一人でも多くの未経験エンジニアの役に立てば幸いです。 [2021.06.08追記] 反響がありとても驚いています。 同時に内容が一部不十分であったこと反省しています。 セキュリティ面についての内容を追記いたしました。 コードはGitで管理しよう 個人開発であってもコードはgithubなどのGitのホスティングサービスで管理するようにしましょう。 業務ではgitを使うのが一般的ですし、バージョン管理ができるので「正確に動作していた時に戻す」なども簡単にできます。 個人開発であってもdevelop一化ではなく、git-flowに則ってバージョン管理したり

    個人学習で書くコードはpublic公開した方がよい理由 - Qiita
    Ez-style
    Ez-style 2021/06/08
    コードは公開してもいいんだけど、データが公開できない場合はどうすれば。。。
  • 【論文紹介】ベイズ分析のワークフローにおける視覚化について - Qiita

    こんにちは,株式会社Nospareリサーチャー・千葉大学の小林です. 今回はJournal of Royal Statistical Society Series Aにも掲載されたGabry et al. (2017)(arXiv版)の紹介をします.この論文では次の挙げられるベイズ分析のワークフロー 探索的データ分析 分析前のモデルチェック アルゴリズムの動作チェック モデル推定後のモデルチェック において視覚化をどのように使っていくかについて書かれており,実証分析や実務においてベイズ分析を行うにあたってとても有用な内容になっています.記事で掲載する図などは著者がgithubにポストしてあるコードを使って作成しました. データ分析例の設定 この論文では終始PM2.5に関するデータ分析例を取り扱っており,この例では以下の設定があります. PM2.5は人体に対して影響があると考えられ,当は

    【論文紹介】ベイズ分析のワークフローにおける視覚化について - Qiita
  • 機械学習のパラメータチューニングを「これでもか!」というくらい丁寧に解説 - Qiita

    はじめに 私はこれまで機械学習のパラメータチューニングに関し、様々な書籍やサイトで学習を進めてきました。 しかしどれもテクニックの解説が主体のものが多く、 「なぜチューニングが必要なのか?」 という目的に関する記載が非常に少なかったため、体系的な理解に苦労しました。 この経験を後世に役立てられるよう、「初心者でも体系的に理解できる丁寧さ!」をモットーに記事にまとめたいと思います。 具体的には、 1. パラメータチューニングの目的 2. チューニングの手順とアルゴリズム一覧 3. Pythonでの実装手順 (SVMでの分類を例に) の手順で解説を進めます。 独自解釈も含まれるため、間違っている点等ございましたら指摘頂けると有難いです。 なお、文中のコードはこちらのGitHubにもアップロードしております。 2021/9/6追記:LightGBMのチューニング実行例追加 以下の記事に、Ligh

    機械学習のパラメータチューニングを「これでもか!」というくらい丁寧に解説 - Qiita
  • 多目的最適化ライブラリのplatypusを使ってみる - Qiita

    多目的最適化とは, トレードオフの関係にある複数の目的関数を同時に最適化することです. 単目的最適化の場合は最適解は一つですが, 多目的最適化の場合は最適解は一つとは限りません. 多目的最適化における最適解はパレート最適解と呼ばれます. パレート最適解に関する図を下に示します. platypusは, 多目的最適化用のライブラリの一つであるようです. 具体的には, NSGA-II, NSGA-III, MOEA/D, IBEA, Epsilon-MOEA, SPEA2, GDE3, OMOPSO, SMPSO, Epsilon-NSGA-IIなど数多くの手法が使用可能なようです. 使用するにはpipでインストールしましょう. from platypus import NSGAII, Problem, Real, nondominated, Integer import matplotlib.

    多目的最適化ライブラリのplatypusを使ってみる - Qiita
  • Serverless+SPAで超低費用な個人サービス構築のススメ - Qiita

    Serverless+SPA構成 最近低費用でサービス運用できないかと、色々試してたのをまとめてみます。 Serverless構成だとEC2と比べて費用が安くなり、SPAであればルーティングがサーバ側制御ではないためS3のバケットに静的htmlcss、js、画像の配置にてサービス構築が可能となります。 SPAにはReactJSを採用してますが、Vue.jsやUnityとかのサービスでもいけると思います。 良い点ばかりではなく、デメリットも結構あるのでそれを考慮した上で導入しましょう。 個人でお金をかけたくなくてサービス運用したい場合などには良いかもしれません。 (Lambdaの無料枠+アクセス量のみで計算される。ドメイン費込みでも月約$3程度) メリット ・ とにかく費用が安い ・ AWSの設定周りの変更だけでスケールする デメリット ・ 利用しているサービスが多いため、デプロイ時などの

    Serverless+SPAで超低費用な個人サービス構築のススメ - Qiita
    Ez-style
    Ez-style 2021/04/21
  • RESTful APIのURI設計(エンドポイント設計) - Qiita

    RESTful APIのリソース設計で述べた通り、何をリソースとするかを決めたらそのリソースを識別するURIを検討する必要がある。 エンドポイントとは何か エンドポイントとはAPIにアクセスするためのURIのこと。例えば、QiitaのAPIで自分の情報を取得する時のエンドポイントは以下となる。 http://qiita.com/api/v2/users/nagaokakenichi 似たような言葉に「エントリポイント」というものがある。エントリポイントとはプログラムやサブルーチンの実行を開始する場所のこと。 Qiita視点で考えると、 http://qiita.com/api/v2/users/nagaokakenichi を参照されることでプログラムが開始されるので、Qiitaからすると上記URIはエントリポイントとなる。 つまり、エンドポイントはAPIにアクセスする側からの、エントリポ

    RESTful APIのURI設計(エンドポイント設計) - Qiita
    Ez-style
    Ez-style 2021/04/20
  • Pythonでパワポの説明資料(報告書)を生成する - Qiita

    1. パワーポイントを生成するPythonライブラリの導入 世の中便利なもので大体のものはすでに存在している。 python-pptx そして先駆者が使っている。 https://qiita.com/daiki7nohe/items/11019e90cd43c82095fa https://qiita.com/pocket8137/items/3d8fda2c47664bf9130b 以下のコマンドでインストール。 pip install python-pptx 2. サンプル:基的なスライド まずはGetting Startedから基的なスライドの生成プログラムを見る。 このスタートアップガイドで図や表の挿入方法について触れられている。 プログラムの流れは 1. レイアウトの読み込み 2. スライドの追加 3. タイトルや文の挿入 4. 保存 となっている。 from pptx i

    Pythonでパワポの説明資料(報告書)を生成する - Qiita
  • OpenRefineで神エクセルと戦う - Qiita

    データエンスージアストにとって天敵とされる「神エクセル」。ぶつくさ言いながらも必要な人はひたすらセル結合の解除や省略値の補完やコピペ、そして検索と置換に勤しむ訳ですが、そんな人はぜひいちど、苦しみをみんなで乗り越えるためにコミュニティによって活発に開発されているOpenRefineを使ってみてください。神エクセルの難易度も様々ですが、表計算ソフトやテキストエディタだけで頑張るよりもはるかに効率的にクレンジングでき、さらには肩凝りも減らすことができます。※個人の感想です。 1 元データ 岩手県 令和元年度学校一覧(エクセル形式) セル結合はもとより均等割付、縦書き、名称の省略、区切り行などなかなか見事な神っぷりです。エクセルの行で596行あります。難易度は中級というところでしょうか。 2 整形/クレンジング 2.1 エクセルデータを読み込む 上級レベルになると、事前にエクセル側である程度整形

    OpenRefineで神エクセルと戦う - Qiita
  • マクドナルドで一日分の栄養を取れる組み合わせを計算したら衝撃の結果に - Qiita

    コレステロールは最低摂取基準量はないので0としています(実はこれが伏線になっている)。 そして目的は、一日必要な栄養素を満たす最もカロリーの低い商品の組み合わせとします。金に糸目はつけません。健康第一! 解く 商品の数が96個、栄養素の数が16個なので、とても人間の手では解けません。そこでコンピューターの力を借ります。幸いPuLPというPythonで無料で利用できるソルバーがあるので、これで計算します。ちなみにExcelにもソルバーが搭載されていますが、この程度の数の決定変数でもエラーになって計算できませんでした。 # Import PuLP modeler functions from pulp import * # A new LP problem prob = LpProblem(name="mac", sense=LpMinimize) # Variables AA = LpVar

    マクドナルドで一日分の栄養を取れる組み合わせを計算したら衝撃の結果に - Qiita
  • 完全栄養マクドナルド食の線型計画による実装~もしマクドナルドだけで生活すると栄養バランスはどうなるのか?~ - Qiita

    完全栄養マクドナルドの線型計画による実装~もしマクドナルドだけで生活すると栄養バランスはどうなるのか?~PythonMacデータ分析データサイエンスマクドナルド 背景と概要 マクドナルドが大好きである。 しかし、ジャンクフード、健康に悪い、 などという話は以前よりよく見かける。 では当にマクドナルドべ続けると、 健康に悪いのだろうか? マクドナルドだけで生活する場合当に、 栄養の偏りやカロリー過剰などが発生するのだろうか? 稿は、マクドナルドだけで 一日に必要なすべての栄養素を摂取する事 をする場合に、どのようなメニューを選ぶべきで、 その結果どのような栄養問題が生じるのか、 PuLPというPythonの線型計画ライブラリを用いて 研究した結果をまとめたものである。 すなわち、マクドナルドだけで 完全栄養としてのメニューを組み立てるには 何をどれだけべればいいの? そして

    完全栄養マクドナルド食の線型計画による実装~もしマクドナルドだけで生活すると栄養バランスはどうなるのか?~ - Qiita
  • 待ってました CUDA on WSL 2 - Qiita

    最新情報 (2022-06-15 時点) エヌビディアの佐々木です。 2020 年 6 月にこの記事を書いて以来、Windows Insider Preview や NVIDIA ドライバの新しいビルドが出たタイミングなどで記事を更新してきましたが、あちこちに注釈が増えて読みづらくなってきたので、今後はこの「最新情報」セクションに新しい情報を集約しようと思います。あと、更新履歴は記事末尾へ送りました。 私が動作を確認したバージョン Windows のビルド: 22621.1 (Windows 11 バージョン 22H2) NVIDIA ドライバ: 512.95 nvidia-smi コマンドの GPU-Util 欄が "N/A" になってしまう問題は解決! 実行した NGC コンテナイメージ nvcr.io/nvidia/tensorflow:22.05-tf2-py3 Docker De

    待ってました CUDA on WSL 2 - Qiita
  • 30分でGoogleスプレッドシートを使ってgeojsonを返すAPIを公開する - Qiita

    サンプルデータの準備 データはおでかけマップさんのデータをお借りしました https://www.odekakemap.com/station/ A列を駅名,B列を緯度、C列を経度とします Google Action Script スプレッドシートのツール -> スクリプトエディタを選択します 以下のコードをコピペ function getData(sheetName) { var sheet = SpreadsheetApp.getActive().getSheetByName(sheetName); var rows = sheet.getDataRange().getValues(); return rows.map(function(row) { var obj = {}; obj.type = "Feature" obj.properties = {}; obj.properti

    30分でGoogleスプレッドシートを使ってgeojsonを返すAPIを公開する - Qiita
  • 【保存版】データサイエンティスト転職を決めるポートフォリオのガイドライン【書籍化決定】 - Qiita

    書籍化されました 記事をベースに監修者の村上さんが1冊のにまとめてくれました(感謝) データサイエンティストのキャリア面やポートフォリオの細かい部分をさらに追加・ブラッシュアップした内容になっています。 まえがき はじめに 皆さん、「データサイエンティスト」という職種をご存知でしょうか? この数年間で、AIやディープラーニングといったバズワードと共にデータサイエンティストというワードも、よく耳にするようになりました。最新の技術を扱えて、年収も高い非常に魅力的な職業なため、データサイエンティストへの転職を検討されている方もいらっしゃるのではないでしょうか? 実際、データサイエンティスト職への就職・転職希望者は年々増加しています。しかし、未経験の人材を育成できる会社はまだまだ少なく、未経験からの転職転職希望者の増加に伴い高まっています。 データサイエンティストは求められるスキルの幅が広く

    【保存版】データサイエンティスト転職を決めるポートフォリオのガイドライン【書籍化決定】 - Qiita