Add a section to read and parse data into a DataFrame
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 35/100
- issue の種類
- ドキュメント
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- pandas, python
- 領域
- data, documentation
調査の方向性
Issue にリンクされている「Automating data processing using For Loops」と「Reading CSV Data Using Pandas」のセクションを、レッスン全体の構成と併せて読んでください。完了の条件は、レッスンに、提案された generator の例を使って CSV の行を DataFrame にパースする方法を明確に説明するセクションが含まれ、このアプローチが大規模なデータセットでいつ役立つかを説明していることです。
索引モデルが issue の本文から書いたものです。
説明
How could the content be improved?
The following section introduce how data can be processed using loops
Automating data processing using For Loops
I believe it would also be advantageous to have a similar section in the following
Here we can briefly introduce python generators as well. For example, consider a CSV file where entries are name, age, location. We can parse this data to a dataframe using a generator. Image location is a comma separated string field and we want to read latitude and longitude separately.
| name | age | location |
|---|---|---|
| John | 50 | 123341,123321 |
| Emily | 25 | 321321,123321 |
| Wick | 35 | 123341,654789 |
| Raj | 40 | 987789,123321 |
import csv
import pandas as pd
def transform_lines(csv_path):
reader = csv.reader(open(csv_path))
for line_no, line in enumerate(reader):
if line_no == 0:
yield ["Name", "Age", "Latitude", "Longitude"]
else:
name, age, location = line
lat, lng = location.split(",")
yield [name, int(age), float(lat), float(lng)]
lines = transform_lines("./data.csv")
df = pd.DataFrame(lines)
print(df.head())
This is specially useful in large datasets where loading large amount of data in text form is memory consuming.
- 主要言語
- Jupyter Notebook
- スター
- 176
- フォーク
- 316
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
datacarpentry/python-ecology-lesson のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
難易度 1/5 1〜3時間 初心者へのやさしさ 78/100
-
Error in solution to "Challenge - Plots"対応中かも @archaeolauren が 191 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
Recommend a supported Python release, not just any 3.x対応中かも @nbdani が 193 日前に担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 75/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 65/100
datacarpentry/python-ecology-lesson の issue をすべて見る
似ている issue
-
ConcatThenSplitIterDataset drops a document when restored from a JSON-serialized state対応中かも @AshishKumar4 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
[BUG] get_batch_request_from_acceptable_arguments rejects DataFrame batch_data対応中かも @feiiiiii5 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
fivetran/great_expectations#12321 ·
メンテナーはふだん 4 日以内に返信
-
approved correction metadata
難易度 1/5 1時間未満 初心者へのやさしさ 75/100
acl-org/acl-anthology#10515 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
Uniswap/tokenlists-org#3331 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
PolicyEngine/policyengine-uk#2500 ·
メンテナーはふだん 1 日以内に返信