Get first element of Series without knowing the index [duplicate]
Each Answer to this Q is separated by one/two green lines.
Is there any way to access the first element of a Series without knowing its index?
Let’s say I have the following Series:
import pandas as pd
key='MCS096'
SUBJECTS = pd.DataFrame(
{
"ID": pd.Series([146], index=[145]),
"study": pd.Series(["MCS"], index=[145]),
"center": pd.Series(["Mag"], index=[145]),
"initials": pd.Series(["MCS096"], index=[145]),
}
)
Print out SUBJECTS
:
print(SUBJECTS[SUBJECTS.initials==key]['ID'])
>>> 145 146
>>> Name: ID, dtype: int64
How can I get the value 146 here without using index 145?
Use iloc to access by position (rather than label):
In [11]: df = pd.DataFrame([[1, 2], [3, 4]], ['a', 'b'], ['A', 'B'])
In [12]: df
Out[12]:
A B
a 1 2
b 3 4
In [13]: df.iloc[0] # first row in a DataFrame
Out[13]:
A 1
B 2
Name: a, dtype: int64
In [14]: df['A'].iloc[0] # first item in a Series (Column)
Out[14]: 1
The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .