activeloopai / activeloopai/deeplake

[FEATURE] single-CSV auto ingestion

未關閉
#1,377 1 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
enhancement
主要語言
C++
星號
9.2k
分支
722
PR 合併指標
30 天內沒有已合併 PR

描述

## 🚨🚨 Feature Request

Related to #1156 (this issue is a building block to it)

## Description

build the implementation of the API:
```python
ds = ... # create dataset

"""
columns/structure of the file found at: "path/to/file.csv"

--------------------
col1, col2, col3
"text", 1, 5
"another_text", 1, 5.5
"""

ds.ingest("path/to/file.csv")

assert ds.col1.data() == ["text", "another_text"]
assert ds.col2.numpy(as_list=True) == [1, 1]
assert ds.col3.numpy(as_list=True) == [1, 5.5]

assert len(ds) == 2 # num rows
```

#1156 is the feature to support a directory of CSV files, but a single CSV file is sufficient for now.

## Solution
you can probably use pandas to read the CSV file and then create one tensor per column. set the dtype for each column as the dtype found in pandas for that column. the htype can only be determined for text for now. in the future, we would want to infer htypes but now it isn't required.

i would create a **new subdirectory + file** under [here](https://github.com/activeloopai/Hub/tree/main/hub/auto) called "structured/csv.py" and implement your code there, and following the same code structure as the unstructured classes found [here](https://github.com/activeloopai/Hub/tree/main/hub/auto/unstructured).

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。