Идеи проекта схемы

Я бы посоветовал вам взглянуть на этап создания вашего объединенного набора данных.

При объединении наборов данных вы можете сделать это по нескольким индексам, т. Е.

df = pd.merge(left, right, how='outer', on=['Name', 'Unit', 'Level'],  suffixes=['', '_r'])

С помощью внешнего объединения вы сразу же собираете все наборы данных и удаляете дубликаты. Осталось только объединить столбец Year, который вы можете сделать следующим образом:

df['Year'] = df[['Year', 'Year_r']].apply(lambda x: x['Year'] if (x['Year'] is not np.nan and x['Year'] != '') else x['Year_r'], axis=1)

Это заполнит пробелы, после чего вы сможете просто удалить столбец Year_r.

Преимущество заключается в том, что охватываются не только значения NaN пропущенных лет, но и пропущенные годы, которые представлены в виде пустых строк.

После небольшого рабочего примера:

import pandas as pd
import numpy as np


left = pd.DataFrame({'Name': ['Adam', 'Beatrice', 'Crissy', 'Dumbo', 'Peter', 'Adam'],
                     'Unit': ['2', '4', '6', '2', '4', '12'],
                     'Year': ['', '2009', '1954', '2025', '2012', '2024'],
                     'Level': ['L1', 'L1', 'L0', 'L4', 'L3', 'L10']})

right = pd.DataFrame({'Name': ['Adam', 'Beatrice', 'Crissy', 'Dumbo'],
                     'Unit': ['2', '4', '6', '2'],
                     'Year': ['2010', '2009', '1954', '2025'],
                     'Level': ['L1', 'L1', 'L0', 'L4']})

df = pd.merge(left, right, how='outer', on=['Name', 'Unit', 'Level'],  suffixes=['', '_r'])
df['Year'] = df[['Year', 'Year_r']].apply(lambda x: x['Year'] if (x['Year'] is not np.nan and x['Year'] != '') else x['Year_r'], axis=1)
df
5
задан 4 revs, 3 users 100%Anthony Cuozzo 16 August 2017 в 08:33
поделиться

4 ответа

Вы могли бы получить некоторое представление от недавнего потока "проекты PLT, ожидающие участников? в списке рассылки Схемы PLT.

В особенности смотрите на сообщение Flatt:

http://list.cs.brown.edu/pipermail/plt-scheme/2009-January/029585.html

Мы могли пользоваться некоторыми библиотеками файла изображения:

  • чтение файлов GIF (у нас уже есть библиотека для записи),

  • чтение и запись файлов BMP

  • чтение и запись файлов XPM & XBM

Все они форматируют, в настоящее время встраиваются в MrEd с помощью C код, но код ужасен, и мы хотели бы избавиться от него. Кроме того, эти форматы изображения довольно просты.


4
ответ дан 13 December 2019 в 22:18
поделиться

Как насчет веб-сервера продолжения. Smalltalk уже имеет один (Побережье), и Схема PLT имеет один в, он - дистрибутив, но я думаю, что это был бы хороший всесторонний проект попробовать, поскольку это покрывает сети, многопоточность, ввод-вывод, пользовательская расширяемость и т.д. и т.д.

Существует интересная статья здесь, которая могла бы запустить Вас.

Удачи!!!

1
ответ дан 13 December 2019 в 22:18
поделиться

Курс 6.001 в MIT ведется по LISP, попробуйте некоторые присвоения лаборатории.

4
ответ дан 13 December 2019 в 22:18
поделиться

Если у Вас есть основательная Схема под Вашим поясом, и Вы хотите понять то, что происходит, когда компилятор делает генерацию кода, следует этому учебному руководству. Существуют связанные ресурсы в домашней странице автора.

Остерегайтесь: бумага, учебное руководство и тестовые сценарии действительно не совсем выстраиваются в линию. Необходимо сохранить остроумие о Вас и понять вещи немного для себя. В частности, следуйте учебному руководству до лямбд, затем следуйте за бумагой для labels/code/labelcall, затем обратно к учебному руководству для выделения "кучи", затем обратно бумаге для продолжений и вперед к следующим шагам. (Извините, что сделал, это усложнило, но это - маршрут, который работал на меня.)

1
ответ дан 13 December 2019 в 22:18
поделиться