はじめに
この記事では、Pandasを使用してサンプルデータフレームを作成し、組み込みのto_markdown()
関数を使用してMarkdown形式にエクスポートする方法を紹介します。
サンプルデータフレームの作成
Markdownにデータフレームをエクスポートする前に、Pandasを使用してサンプルデータフレームを作成します。この例では、異なるフルーツとその栄養価に関する情報を含むデータフレームを作成します。
python
import pandas as pd
data = {
'Fruit': ['Apple', 'Banana', 'Orange', 'Strawberry', 'Kiwi'],
'Calories': [95, 89, 47, 32, 61],
'Fiber': [4.4, 2.6, 2.4, 2.0, 3.0],
'Vitamin C': [14, 8.7, 53, 97, 92.7]
}
df = pd.DataFrame(data)
PandasでデータフレームをMarkdownにエクスポート
Pandasには、データフレームをMarkdown形式にエクスポートするための組み込み関数to_markdown()
があります。まず、必要なパッケージがインストールされていることを確認してください。
bash
$ pip install -U pandas[markdown]
そして、to_markdown()
関数を使用してデータフレームをMarkdownにエクスポートできます。
python
markdown_table = df.to_markdown()
print(markdown_table)
出力は、Markdown形式のテーブルになります。
| | Fruit | Calories | Fiber | Vitamin C |
|---:|:-----------|-----------:|--------:|------------:|
| 0 | Apple | 95 | 4.4 | 14 |
| 1 | Banana | 89 | 2.6 | 8.7 |
| 2 | Orange | 47 | 2.4 | 53 |
| 3 | Strawberry | 32 | 2 | 97 |
| 4 | Kiwi | 61 | 3 | 92.7 |
to_markdown()のオプション
Pandasのto_markdown()
関数には、エクスポートされたMarkdownテーブルの外観をカスタマイズするためのさまざまなオプションが用意されています。このセクションでは、いくつかのオプションを探索し、効果的に使用する方法を説明します。
buf
このオプションは、Markdownテーブルをファイルライクオブジェクトまたは文字列バッファに書き込むことができます。デフォルトでは、None
に設定されており、関数はエクスポートされたMarkdownテーブルを文字列として返します。
python
with open("output.md", "w") as file:
df.to_markdown(buf=file)
index
このブールオプションは、出力Markdownテーブルにインデックス列を含めるかどうかを設定します。デフォルトでは、True
に設定されています。出力テーブルからインデックスを除外するには、False
に設定してください。
python
markdown_table = df.to_markdown(index=False)
print(markdown_table)
header
このオプションは、テーブル列にカスタムヘッダーを含めることができます。デフォルトでは、True
に設定されており、関数は既存の列名をヘッダーとして使用します。カスタムヘッダーを使用する場合は、新しいヘッダーの文字列リストを渡してください。
python
custom_headers = ['Fruit Name', 'Cal (kcal)', 'Fiber (g)', 'Vit C (mg)']
markdown_table = df.to_markdown(headers=custom_headers)
print(markdown_table)
tablefmt
このオプションは、出力Markdownテーブルで使用されるテーブル形式を制御します。デフォルトでは、'pipe'
に設定されています。他には、'simple'
、'grid'
、'tsv'
などがあります。
python
markdown_table = df.to_markdown(tablefmt='grid')
print(markdown_table)
floatfmt
このオプションは、浮動小数点数のフォーマットを指定することができます。デフォルトでは、'.6g'
に設定されています。全ての浮動小数点列に単一の文字列を指定するか、各浮動小数点列ごとに文字列のリストを指定することができます。
python
markdown_table = df.to_markdown(floatfmt='.2f')
print(markdown_table)
numalign
このオプションは、数値列の整列を制御します。デフォルトでは、'right'
に設定されています。他には、'left'
、'center'
、'right'
などがあります。
python
markdown_table = df.to_markdown(numalign='center')
print(markdown_table)
stralign
このオプションは、数値以外の列の整列を制御します。デフォルトでは、'left'に設定されています。他には、'left'
、'center'
、'right'
などがあります。
python
markdown_table = df.to_markdown(stralign='center')
print(markdown_table)
AlloyDB
Amazon Cognito
Amazon EC2
Amazon ECS
Amazon QuickSight
Amazon RDS
Amazon Redshift
Amazon S3
API
Autonomous Vehicle
AWS
AWS API Gateway
AWS Chalice
AWS Control Tower
AWS IAM
AWS Lambda
AWS VPC
BERT
BigQuery
Causal Inference
ChatGPT
Chrome Extension
CircleCI
Classification
Cloud Functions
Cloud IAM
Cloud Run
Cloud Storage
Clustering
CSS
Data Engineering
Data Modeling
Database
dbt
Decision Tree
Deep Learning
Descriptive Statistics
Differential Equation
Dimensionality Reduction
Discrete Choice Model
Docker
Economics
FastAPI
Firebase
GIS
git
GitHub
GitHub Actions
Google
Google Cloud
Google Search Console
Hugging Face
Hypothesis Testing
Inferential Statistics
Interval Estimation
JavaScript
Jinja
Kedro
Kubernetes
LightGBM
Linux
LLM
Mac
Machine Learning
Macroeconomics
Marketing
Mathematical Model
Meltano
MLflow
MLOps
MySQL
NextJS
NLP
Nodejs
NoSQL
ONNX
OpenAI
Optimization Problem
Optuna
Pandas
Pinecone
PostGIS
PostgreSQL
Probability Distribution
Product
Project
Psychology
Python
PyTorch
QGIS
R
ReactJS
Regression
Rideshare
SEO
Singer
sklearn
Slack
Snowflake
Software Development
SQL
Statistical Model
Statistics
Streamlit
Tabular
Tailwind CSS
TensorFlow
Terraform
Transportation
TypeScript
Urban Planning
Vector Database
Vertex AI
VSCode
XGBoost