Как запросить небольшой набор данных с помощью Python

Возможно, что-то вроде этого, где ID - ваш ObjectId. Первый {} необходим для идентификации вашего документа. Не требуется использовать ObjectId, если у вас есть еще один уникальный идентификатор в вашей коллекции.

db.collection.update(
    { "_id": ID, "playlists._id": "58"},
    { "$push": 
        {"playlists.$.musics": 
            {
                "name": "test name",
                "duration": "4.00"
            }
        }
    }
)
-1
задан aws_apprentice 27 March 2019 в 11:42
поделиться

1 ответ

Я предполагаю, что вторая последняя строка ожидаемого ответа должна оставаться как «Оранжевый 2» для Предмета и типа:

import pandas
df = pandas.DataFrame([['Apple', '10'], 
                       ['Orange', '5'], 
                       ['Pear', '8'], 
                       ['Apple', '10'], 
                       ['Pear', '5'], 
                       ['Orange', '2'], 
                       ['Pear', '5']], 
                      columns = ['Item', 'Type'])

categories = []
for index,row in df.iterrows():
    if tuple(row) not in categories:
        categories.append(tuple(row))
df["Category"] = [categories.index(tuple(row))+1 for index,row in df.iterrows()]
print(df)

Это даст

     Item Type  Category
0   Apple   10         1
1  Orange    5         2
2    Pear    8         3
3   Apple   10         1
4    Pear    5         4
5  Orange    2         5
6    Pear    5         4

, поскольку нет специальная операция панд здесь, использование панд не является необходимым (хотя это может быть полезно для других операций). Ключ заключается в том, чтобы определить уникальный список кортежей, который записывает каждую комбинацию Item и Type, и использовать функцию index, чтобы найти ее снова.

0
ответ дан astrochoi 27 March 2019 в 11:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: