ML/Data/Dev Books#

import pandas as pd

df = pd.read_json('../data/books.json')
print(df.columns.to_list())
['title', 'sub_title', 'ed.', 'series', 'authors', 'foreword', 'publisher', 'copyright', 'pub_date', 'site', 'amazon', 'repo']

Preprocessing#

df['pub_date'] = pd.to_datetime(df['pub_date'])

Filtering#

def make_clickable(val):
    return f'<a href="{val}" target="_blank">link</a>' if val else '-'

def df_style(styler):
    styler.format({
        'ed.': lambda x: str(x) if x != 1 else '',
        'pub_date': lambda x: x.strftime("%b %Y"),
        'site': make_clickable, 
        'amazon': make_clickable, 
        'repo': make_clickable})
    
    return styler

cols = ['title', 'ed.', 'publisher', 'pub_date', 'series', 'site','amazon', 'repo'] 

df2 = df.sort_values(by=['pub_date'], ascending=False).reset_index(drop=True)[cols]

df2.style.pipe(df_style)
  title ed. publisher pub_date series site amazon repo
0 Developing Apps with GPT-4 and ChatGPT O'Reilly Jan 2024 link - -
1 Architecting Data and Machine Learning Platforms O'Reilly Dec 2023 link link -
2 Python for Data Science For Dummies 3 Wiley Nov 2023 link link -
3 50 Algorithms Every Programmer Should Know 2 Packt Sep 2023 Expert Insight link link -
4 Machine Learning for Time Series 2 Packt Aug 2023 Expert Insight link link -
5 Dive Into Data Science No Starch Apr 2023 link link -
6 Effective XGBoost MetaSnake Mar 2023 Treading on Python link link -
7 Software Requirements Essentials Addison-Wesley Mar 2023 link link -
8 Mastering Blockchain 4 Packt Mar 2023 Expert Insight link link link
9 The Kaggle Workbook Packt Feb 2023 Expert Insight link link link
10 Creating Software with Modern Diagramming Techniques Pragmatic Bookshelf Feb 2023 link link -
11 Python in a Nutshell 4 O'Reilly Jan 2023 link link -
12 AI at the Edge O'Reilly Jan 2023 link link link
13 Pandas for Everyone 2 Addison-Wesley Dec 2022 Data & Analytics link link -
14 Python Data Science Handbook 2 O'Reilly Dec 2022 link link link
15 Functional Python Programming 3 Packt Dec 2022 Expert Insight link link link
16 Hands-On Machine Learning with Scikit-Learn, Keras, & TensorFlow 3 O'Reilly Oct 2022 link link link
17 Deep Learning with TensorFlow and Keras 3 Packt Oct 2022 Expert Insight link link link
18 Journey to Become a Google Cloud Machine Learning Engineer Packt Sep 2022 link link link
19 Python for Data Analysis 3 O'Reilly Aug 2022 link link link
20 TensorFlow in Action Manning Aug 2022 link link link
21 Natural Language Processing with TensorFlow 2 Packt Jul 2022 Expert Insight link link link
22 Hands-On Data Structures and Algorithms with Python 3 Packt Jul 2022 Expert Insight link link link
23 Fundamentals of Data Engineering O'Reilly Jun 2022 link link -
24 Designing Machine Learning Systems O'Reilly May 2022 link link link
25 Mastering Python 2 Packt May 2022 Expert Insight link link link
26 Interpretable AI Manning May 2022 link link link
27 Data Science on the Google Cloud Platform 2 O'Reilly Apr 2022 link link link
28 The Kaggle Book Packt Apr 2022 Expert Insight link link link
29 TinyML Cookbook Packt Apr 2022 link link link
30 Transformers for Natural Language Processing 2 Packt Mar 2022 Expert Insight link link link
31 Algorithms For Dummies 2 Wiley Mar 2022 link link -
32 Machine Learning with PyTorch and Scikit-Learn Packt Feb 2022 Expert Insight link link link
33 Modern Software Engineering Addison-Wesley Dec 2021 link link -
34 Effective Pandas MetaSnake Dec 2021 Treading on Python link link link
35 The Self-Taught Computer Scientist Wiley Dec 2021 link link -
36 Job Ready Python Wiley Nov 2021 Mthree Tech Skills link link -
37 Deep Learning with Python 2 Manning Oct 2021 link link link
38 Python Distilled Addison-Wesley Sep 2021 link link -
39 Learning Deep Learning Addison-Wesley Aug 2021 link link link
40 Python for Geeks Packt Aug 2021 link link link
41 The Official Guide to Mermaid.js Packt Aug 2021 link link link
42 Python Object-Oriented Programming 4 Packt Jul 2021 Expert Insight link link link
43 Becoming a Data Head Wiley May 2021 link link -

Data Analysis#

def get_authors(df):
    authors_set = set()

    for authors in df['authors']:
        for author in authors:
            authors_set.add(author)
    
    return sorted(list(authors_set))

def get_books_with_keyword(keyword):
    title_has_keyword = df['title'].str.lower().str.contains(keyword)
    sub_title_has_keyword = df['sub_title'].str.lower().str.contains(keyword)
    is_keyword = title_has_keyword | sub_title_has_keyword

    return df[is_keyword].sort_values(
        by=['pub_date'], ascending=False).reset_index(drop=True)[cols].style.pipe(df_style)
get_books_with_keyword('business')
  title ed. publisher pub_date series site amazon repo
0 Dive Into Data Science No Starch Apr 2023 link link -
1 Software Requirements Essentials Addison-Wesley Mar 2023 link link -
get_books_with_keyword('algorithm')
  title ed. publisher pub_date series site amazon repo
0 50 Algorithms Every Programmer Should Know 2 Packt Sep 2023 Expert Insight link link -
1 Hands-On Data Structures and Algorithms with Python 3 Packt Jul 2022 Expert Insight link link link
2 Algorithms For Dummies 2 Wiley Mar 2022 link link -
3 The Self-Taught Computer Scientist Wiley Dec 2021 link link -
get_books_with_keyword('data scien')
  title ed. publisher pub_date series site amazon repo
0 Python for Data Science For Dummies 3 Wiley Nov 2023 link link -
1 Dive Into Data Science No Starch Apr 2023 link link -
2 The Kaggle Workbook Packt Feb 2023 Expert Insight link link link
3 Python Data Science Handbook 2 O'Reilly Dec 2022 link link link
4 Data Science on the Google Cloud Platform 2 O'Reilly Apr 2022 link link link
5 The Kaggle Book Packt Apr 2022 Expert Insight link link link
6 Becoming a Data Head Wiley May 2021 link link -
get_books_with_keyword('machine learning')
  title ed. publisher pub_date series site amazon repo
0 Architecting Data and Machine Learning Platforms O'Reilly Dec 2023 link link -
1 Machine Learning for Time Series 2 Packt Aug 2023 Expert Insight link link -
2 AI at the Edge O'Reilly Jan 2023 link link link
3 Hands-On Machine Learning with Scikit-Learn, Keras, & TensorFlow 3 O'Reilly Oct 2022 link link link
4 Journey to Become a Google Cloud Machine Learning Engineer Packt Sep 2022 link link link
5 Natural Language Processing with TensorFlow 2 Packt Jul 2022 Expert Insight link link link
6 Designing Machine Learning Systems O'Reilly May 2022 link link link
7 Interpretable AI Manning May 2022 link link link
8 Data Science on the Google Cloud Platform 2 O'Reilly Apr 2022 link link link
9 The Kaggle Book Packt Apr 2022 Expert Insight link link link
10 Machine Learning with PyTorch and Scikit-Learn Packt Feb 2022 Expert Insight link link link
11 Becoming a Data Head Wiley May 2021 link link -