diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-dynamo-pandas.spec | 185 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 187 insertions, 0 deletions
@@ -0,0 +1 @@ +/dynamo-pandas-1.3.0.tar.gz diff --git a/python-dynamo-pandas.spec b/python-dynamo-pandas.spec new file mode 100644 index 0000000..bc24c22 --- /dev/null +++ b/python-dynamo-pandas.spec @@ -0,0 +1,185 @@ +%global _empty_manifest_terminate_build 0 +Name: python-dynamo-pandas +Version: 1.3.0 +Release: 1 +Summary: Make working with pandas dataframe and AWS DynamoDB easy. +License: MIT +URL: https://github.com/DrGFreeman/dynamo-pandas +Source0: https://mirrors.aliyun.com/pypi/web/packages/eb/ca/15cf7f8dd4ce86b5d1166cf45d9654d3f664231810672a117666651bf190/dynamo-pandas-1.3.0.tar.gz +BuildArch: noarch + +Requires: python3-pandas +Requires: python3-boto3 + +%description + 0 player_id 4 non-null object + 1 last_play 4 non-null datetime64[ns] + 2 play_time 4 non-null timedelta64[ns] + 3 rating 4 non-null float64 + 4 bonus_points 3 non-null Int8 +dtypes: Int8(1), datetime64[ns](1), float64(1), object(1), timedelta64[ns](1) +memory usage: 264.0+ bytes +``` +Storing the rows of this dataframe to DynamoDB requires multiple data type conversions. +```python +>>> from dynamo_pandas import put_df, get_df, keys +``` +The `put_df` function adds or updates the rows of a dataframe into the specified table, taking care of the required type conversions (the table must be already created and the primary key column(s) be present in the dataframe). +```python +>>> put_df(players_df, table="players") +``` +The `get_df` function retrieves the items matching the speficied key(s) from the table into a dataframe. +```python +>>> df = get_df(table="players", keys=[{"player_id": "player_three"}, {"player_id": "player_one"}]) +>>> print(df) + bonus_points player_id last_play rating play_time +0 4 player_three 2021-01-21 10:22:43 2.5 1 days 14:01:19 +1 3 player_one 2021-01-18 22:47:23 4.3 2 days 17:41:55 +``` +In the case where only a partition key is used, the `keys` function simplifies the generation of the keys list. +```python +>>> df = get_df(table="players", keys=keys(player_id=["player_two", "player_four"])) +>>> print(df) + bonus_points player_id last_play rating play_time +0 1.0 player_two 2021-01-19 19:07:54 3.8 0 days 22:07:34 +1 NaN player_four 2021-01-22 13:51:12 4.8 0 days 03:45:49 +``` +The data types returned by the `get_df` function are basic types and no automatic type conversion is attempted. +```python +>>> df.info() +<class 'pandas.core.frame.DataFrame'> +RangeIndex: 2 entries, 0 to 1 +Data columns (total 5 columns): + +%package -n python3-dynamo-pandas +Summary: Make working with pandas dataframe and AWS DynamoDB easy. +Provides: python-dynamo-pandas +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-dynamo-pandas + 0 player_id 4 non-null object + 1 last_play 4 non-null datetime64[ns] + 2 play_time 4 non-null timedelta64[ns] + 3 rating 4 non-null float64 + 4 bonus_points 3 non-null Int8 +dtypes: Int8(1), datetime64[ns](1), float64(1), object(1), timedelta64[ns](1) +memory usage: 264.0+ bytes +``` +Storing the rows of this dataframe to DynamoDB requires multiple data type conversions. +```python +>>> from dynamo_pandas import put_df, get_df, keys +``` +The `put_df` function adds or updates the rows of a dataframe into the specified table, taking care of the required type conversions (the table must be already created and the primary key column(s) be present in the dataframe). +```python +>>> put_df(players_df, table="players") +``` +The `get_df` function retrieves the items matching the speficied key(s) from the table into a dataframe. +```python +>>> df = get_df(table="players", keys=[{"player_id": "player_three"}, {"player_id": "player_one"}]) +>>> print(df) + bonus_points player_id last_play rating play_time +0 4 player_three 2021-01-21 10:22:43 2.5 1 days 14:01:19 +1 3 player_one 2021-01-18 22:47:23 4.3 2 days 17:41:55 +``` +In the case where only a partition key is used, the `keys` function simplifies the generation of the keys list. +```python +>>> df = get_df(table="players", keys=keys(player_id=["player_two", "player_four"])) +>>> print(df) + bonus_points player_id last_play rating play_time +0 1.0 player_two 2021-01-19 19:07:54 3.8 0 days 22:07:34 +1 NaN player_four 2021-01-22 13:51:12 4.8 0 days 03:45:49 +``` +The data types returned by the `get_df` function are basic types and no automatic type conversion is attempted. +```python +>>> df.info() +<class 'pandas.core.frame.DataFrame'> +RangeIndex: 2 entries, 0 to 1 +Data columns (total 5 columns): + +%package help +Summary: Development documents and examples for dynamo-pandas +Provides: python3-dynamo-pandas-doc +%description help + 0 player_id 4 non-null object + 1 last_play 4 non-null datetime64[ns] + 2 play_time 4 non-null timedelta64[ns] + 3 rating 4 non-null float64 + 4 bonus_points 3 non-null Int8 +dtypes: Int8(1), datetime64[ns](1), float64(1), object(1), timedelta64[ns](1) +memory usage: 264.0+ bytes +``` +Storing the rows of this dataframe to DynamoDB requires multiple data type conversions. +```python +>>> from dynamo_pandas import put_df, get_df, keys +``` +The `put_df` function adds or updates the rows of a dataframe into the specified table, taking care of the required type conversions (the table must be already created and the primary key column(s) be present in the dataframe). +```python +>>> put_df(players_df, table="players") +``` +The `get_df` function retrieves the items matching the speficied key(s) from the table into a dataframe. +```python +>>> df = get_df(table="players", keys=[{"player_id": "player_three"}, {"player_id": "player_one"}]) +>>> print(df) + bonus_points player_id last_play rating play_time +0 4 player_three 2021-01-21 10:22:43 2.5 1 days 14:01:19 +1 3 player_one 2021-01-18 22:47:23 4.3 2 days 17:41:55 +``` +In the case where only a partition key is used, the `keys` function simplifies the generation of the keys list. +```python +>>> df = get_df(table="players", keys=keys(player_id=["player_two", "player_four"])) +>>> print(df) + bonus_points player_id last_play rating play_time +0 1.0 player_two 2021-01-19 19:07:54 3.8 0 days 22:07:34 +1 NaN player_four 2021-01-22 13:51:12 4.8 0 days 03:45:49 +``` +The data types returned by the `get_df` function are basic types and no automatic type conversion is attempted. +```python +>>> df.info() +<class 'pandas.core.frame.DataFrame'> +RangeIndex: 2 entries, 0 to 1 +Data columns (total 5 columns): + +%prep +%autosetup -n dynamo-pandas-1.3.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-dynamo-pandas -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 1.3.0-1 +- Package Spec generated @@ -0,0 +1 @@ +bb2cbc2d99093093ed5aaf9fab7d84ae dynamo-pandas-1.3.0.tar.gz |