Панды, как получить индекс строки? - PullRequest
0 голосов
/ 07 ноября 2018

enter image description here

import pandas as pd
data = pd.read_csv('traj2_Binarization.csv', sep=",", index_col="NAME")

for index, row in data.iterrows():
    print(row)
    -----results------
    RUNX3            0
    ROGDI            0
    FSTL3            0
    MOCOS            0
    PDCD7            1
    MYO15A           0
    MYO9B            0
    MAP1LC3A         0
    TBC1D19          0
    ASIC1            0
    RAP1A            0
    ARAP3            0
    IQSEC2           0
    HIVEP3           0

Здесь, как я могу преобразовать результаты ниже?

RUNX3 = False
ROGDI = False
FSTL3 = False
MOCOS = False
PDCD7 = True
.
.
.

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Дополнительно к ответу @ jezrael, если версия ниже 3.6:

for index, row in data.iterrows():
    print('%s = %s'%(index,bool(row['whatever is the column'])))

Или:

for index, row in data.iterrows():
    print('{0} = {1}'.format(index,bool(row['whatever is the column'])))

Или:

for index, row in data.iterrows():
    print(index,'=',bool(row['whatever is the column']))

Весь вывод:

RUNX3 = False
ROGDI = False
FSTL3 = False
MOCOS = False
PDCD7 = True
MYO15A = False
MYO9B = False
MAP1LC3A = False
TBC1D19 = False
ASIC1 = False
RAP1A = False
ARAP3 = False
IQSEC2 = False
HIVEP3 = False
0 голосов
/ 07 ноября 2018

Используйте f-string с, выбрав один элемент Ряд для скалярного вычисления по row["NAME"] и преобразовав в bool:

#python 3.6 +
for index, row in data.iterrows():
    print(f'{index} = {bool(row["RUNX3"])}')
#python bellow 3.6
for index, row in data.iterrows():
    print('{} = {}'.format(index, bool(row["RUNX3"])))

RUNX3 = False
ROGDI = False
FSTL3 = False
MOCOS = False
PDCD7 = True
MYO15A = False
MYO9B = False
MAP1LC3A = False
TBC1D19 = False
ASIC1 = False
RAP1A = False
ARAP3 = False
IQSEC2 = False
HIVEP3 = False

for index, row in data.iterrows():
    print(index, bool(row["RUNX3"]))

RUNX3 False
ROGDI False
FSTL3 False
MOCOS False
PDCD7 True
MYO15A False
MYO9B False
MAP1LC3A False
TBC1D19 False
ASIC1 False
RAP1A False
ARAP3 False
IQSEC2 False
HIVEP3 False

А для логического Series использовать astype:

s = data["RUNX3"].astype(bool)
print (s)
RUNX3       False
ROGDI       False
FSTL3       False
MOCOS       False
PDCD7        True
MYO15A      False
MYO9B       False
MAP1LC3A    False
TBC1D19     False
ASIC1       False
RAP1A       False
ARAP3       False
IQSEC2      False
HIVEP3      False
Name: NAME, dtype: bool
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...