новичок, не может использовать первый столбец для сохранения результатов - PullRequest
0 голосов
/ 24 октября 2018

Я изучаю питон. У меня возникли проблемы с представлением моих результатов на соревнования по титаническому стычке.в приведенном ниже Surv_Pred содержится мой массив результатов. Пока T содержит мои данные

show_table(T,5)
# this results in :

Пример ввода данных: 5
PassengerId 5
Возраст 0.35000000000000003
SibSp 0.0
Parch 0.0
Тариф 0.0008050000000000002
RelationsOnBoard 0.0
DatingRank 0.3
Палуба 0.0
женский 0
harborA 0
harborB 1
harborC 0
ClassUp 0
ClassMid 0
ClassLow 1
HasCabin 0
AgeUnknown 0
Family_Size 0.0
Fare_Per_Person 0.008050000000000002
Cabin3thclass 1
Cabin2ndClass 0
Cabin1stClass 0 * 1027C Класс 0L 02828CFL

surv_pred = clf.predict(T)
print(surv_pred)

#this results in a binary array [1 0 1 1 0 1 .... etc

# from here i have python trouble:

ids =  T.loc['PassengerId']
submissions = pd.DataFrame('PassengerId' = ids ,'survived' = surv_pred)
submissions.to_csv("submit_v3.csv",index=False)

Я пробовал различные варианты кода, но каким-то образом я не получу первый столбец T ea T ['passengerId'].чтобы получить вышеуказанный код для работы, то есть сохранить результат в CSV-файл.проблемы в панде и сохранении и выборе.ids=T['passenderId'] тоже не будет работать.

Что не так в приведенном выше коде?

Я получил такие ошибки, как KeyError: 'метка [PassengerId] отсутствует в [index]'
вызванав строке: ids = T.loc ['PassengerId']
, который я не понимаю, потому что там есть PassengerId, я даже пытался убедиться в этом, поместив в коде все вышеупомянутое.

    T.rename(columns={ T.columns[0]: 'PassengerId' },inplace=True)

Ответы [ 2 ]

0 голосов
/ 24 октября 2018

Ваша идея - все данные в столбце

ids = T.loc [:, 'PassengerId']. Values ​​

Ссылки "Правильный способ поменять значения столбца - использовать rawзначения: "

https://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-integer

0 голосов
/ 24 октября 2018

Код:

submissions = pd.DataFrame('PassengerId' = ids ,'survived' = surv_pred)

создайте эту проблему

Вы должны сделать так:

submissions = pd.DataFrame({'PassengerId' : ids ,'survived' : surv_pred})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...