from io import StringIO
from pandas import read_csv
dtf = read_csv(StringIO("DATE_TIME,A\n2/8/2015 6:00:30,1"))
print(dtf)
dtf.set_index(dtf.DATE_TIME, drop=True, inplace=True)
print(dtf.columns)
print(dtf)
DATE_TIME A
0 2/8/2015 6:00:30 1
Index(['DATE_TIME', 'A'], dtype='object')
DATE_TIME A
DATE_TIME
2/8/2015 6:00:30 2/8/2015 6:00:30 1
DATE_TIME A
0 2/8/2015 6:00:30 1
Index(['A'], dtype='object')
A
DATE_TIME
2/8/2015 6:00:30 1
pd.show_versions()
рдХрд╛ рдЖрдЙрдЯрдкреБрдЯINSTALLED VERSIONS
------------------
commit: None
python: 3.5.1.final.0
python-bits: 64
OS: Darwin
OS-release: 15.5.0
machine: x86_64
processor: i386
byteorder: little
LC_ALL: None
LANG: None
pandas: 0.18.1
nose: None
pip: 8.1.2
setuptools: 20.6.7
Cython: None
numpy: 1.11.1
scipy: 0.16.1
statsmodels: None
xarray: None
IPython: 4.0.1
sphinx: None
patsy: None
dateutil: 2.5.3
pytz: 2016.6
blosc: None
bottleneck: None
tables: None
numexpr: None
matplotlib: 1.5.0
openpyxl: 2.3.5
xlrd: 1.0.0
xlwt: 1.0.0
xlsxwriter: None
lxml: None
bs4: 4.4.1
html5lib: None
httplib2: 0.9.2
apiclient: 1.5.0
sqlalchemy: None
pymysql: None
psycopg2: None
jinja2: 2.8
boto: None
pandas_datareader: None
None
thx, рдпрд╣ рдПрдХ рдмрдЧ рд▓рдЧрддрд╛ рд╣реИред рдпрджрд┐ рдЗрдирдкреБрдЯ рдореВрд▓ рд╕реЗ рдХрдЯрд╛ рд╣реБрдЖ Series
, рддреЛ рд╕рдВрдмрдВрдзрд┐рдд рдХреЙрд▓рдо рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрджрд┐ рд╣рдо рдХреЙрд▓рдо рдирд╛рдо рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
dtf.set_index('DATE_TIME', drop=True, inplace=True)
dtf.columns
# Index(['A'], dtype='object')
рдмрдЧ рдирд╣реАрдВ - рдпрд╣ set_index рдХреА рдЧрд╛рд░рдВрдЯреА рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИ
рдпрд╣рд╛рдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЙрд▓рдо рдкрд╛рд╕ рдХрд░рдирд╛ рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ -
рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИ
рдПрдХ рдкреАрдЖрд░ рд╣реИ рдЬрд╣рд╛рдВ рдЗрд╕ рдХрд╛рдо рдХреЛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИ - рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ
рдпрд╣ рднреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджреЗ рд╕рдХрддреЗ рд╣реИрдВ
(рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ inplace рдФрд░ drop рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реИ)
рдмрдЧ рдирд╣реАрдВ - рдпрд╣ set_index рдХреА рдЧрд╛рд░рдВрдЯреА рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИ
рдХреНрдпрд╛ рдЖрдк рдпрд╣ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ set_index рдХреА рдХреНрдпрд╛ рдЧрд╛рд░рдВрдЯреА рд╣реИ? рдореБрдЭреЗ рдпрд╣ рднреНрд░рд╛рдордХ рд▓рдЧрддрд╛ рд╣реИ рдЕрдЧрд░ рдореИрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ drop=True
рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИ рдЬрдм рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ рдпрд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред
@michaelaye
рдЬрдм рдЖрдк рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реВрдЪреА рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЗрдВрдбреЗрдХреНрд╕ рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рд╕рдВрднрд╡рддрдГ рд╕реЛрдЪ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ [рел]] [релред] рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдгрд╛рдо рд╣реИред
In [55]: df = pd.DataFrame({'A':range(2),'B':range(2),'C':range(2)})
In [56]: df
Out[56]:
A B C
0 0 0 0
1 1 1 1
In [57]: df.set_index(['A','B'])
Out[57]:
C
A B
0 0 0
1 1 1
In [58]: df.index=['A','B']
In [59]: df
Out[59]:
A B C
A 0 0 0
B 1 1 1
In [54]: DataFrame.set_index?
Signature: DataFrame.set_index(self, keys, drop=True, append=False, inplace=False, verify_integrity=False)
Docstring:
Set the DataFrame index (row labels) using one or more existing
columns. By default yields a new object.
Parameters
----------
keys : column label or list of column labels / arrays
drop : boolean, default True
Delete columns to be used as the new index
append : boolean, default False
Whether to append columns to existing index
inplace : boolean, default False
Modify the DataFrame in place (do not create a new object)
verify_integrity : boolean, default False
Check the new index for duplicates. Otherwise defer the check until
necessary. Setting to False will improve the performance of this
method
Examples
--------
>>> indexed_df = df.set_index(['A', 'B'])
>>> indexed_df2 = df.set_index(['A', [0, 1, 2, 0, 1, 2]])
>>> indexed_df3 = df.set_index([[0, 1, 2, 0, 1, 2]])
Returns
-------
dataframe : DataFrame
рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдпреЛрдЬрдирд╛?
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
thx, рдпрд╣ рдПрдХ рдмрдЧ рд▓рдЧрддрд╛ рд╣реИред рдпрджрд┐ рдЗрдирдкреБрдЯ рдореВрд▓ рд╕реЗ рдХрдЯрд╛ рд╣реБрдЖ
Series
, рддреЛ рд╕рдВрдмрдВрдзрд┐рдд рдХреЙрд▓рдо рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПредрдпрджрд┐ рд╣рдо рдХреЙрд▓рдо рдирд╛рдо рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред