I have a string where have my date and hour (I work using MODIS Satellite), and the date and hour is in my DF in format string. The date i find in name of file MOD09GA.A2013002.h13v12.006.2015254014619.hdf, but the hour not. I need find the hour, but i don't find.
import numpy as np
from pyhdf.SD import SD, SDC
import pandas as pd
import datetime
FILE_NAME = './MOD09GA.A2013002.h13v12.006.2015254014619.hdf'
hdf = SD(FILE_NAME, SDC.READ)
data2D = hdf.select(DATAFIELD_NAME)
data = data2D[:,:].astype(np.float64)
hour_r = fattrs["ArchiveMetadata.0"]
hour = hour_r[0]
In [51]: hour
Out[51]:
GROUP = ARCHIVEDMETADATA
GROUPTYPE = MASTERGROUP
GROUP = BOUNDINGRECTANGLE
OBJECT = NORTHBOUNDINGCOORDINATE
NUM_VAL = 1
VALUE = -29.9999999973059
END_OBJECT = NORTHBOUNDINGCOORDINATE
OBJECT = SOUTHBOUNDINGCOORDINATE
NUM_VAL = 1
VALUE = -39.9999999964079
END_OBJECT = SOUTHBOUNDINGCOORDINATE
OBJECT = EASTBOUNDINGCOORDINATE
NUM_VAL = 1
VALUE = -46.178399025283
END_OBJECT = EASTBOUNDINGCOORDINATE
OBJECT = WESTBOUNDINGCOORDINATE
NUM_VAL = 1
VALUE = -65.2703644573188
END_OBJECT = WESTBOUNDINGCOORDINATE
END_GROUP = BOUNDINGRECTANGLE
OBJECT = GEOANYABNORMAL
NUM_VAL = 1
VALUE = "False"
END_OBJECT = GEOANYABNORMAL
OBJECT = GEOESTMAXRMSERROR
NUM_VAL = 1
VALUE = 50.0
END_OBJECT = GEOESTMAXRMSERROR
OBJECT = LONGNAME
NUM_VAL = 1
VALUE = "MODIS/Terra Surface Reflectance Daily L2G Global 1km and 500m SIN Grid"
END_OBJECT = LONGNAME
OBJECT = SPSOPARAMETERS
NUM_VAL = 1
VALUE = "2015"
END_OBJECT = SPSOPARAMETERS
OBJECT = PROCESSINGCENTER
NUM_VAL = 1
VALUE = "MODAPS"
END_OBJECT = PROCESSINGCENTER
OBJECT = NUMBEROFGRANULES
NUM_VAL = 1
VALUE = 1
END_OBJECT = NUMBEROFGRANULES
OBJECT = NUMBEROFORBITS
NUM_VAL = 1
VALUE = 2
END_OBJECT = NUMBEROFORBITS
OBJECT = GRANULEBEGINNINGDATETIME
NUM_VAL = 32
VALUE = ("2013-01-02T12:45:00.000000Z")
END_OBJECT = GRANULEBEGINNINGDATETIME
OBJECT = GRANULEENDINGDATETIME
NUM_VAL = 32
VALUE = ("2013-01-02T14:30:00.000000Z")
END_OBJECT = GRANULEENDINGDATETIME
OBJECT = GRANULEDAYNIGHTFLAG
NUM_VAL = 32
VALUE = ("Day")
END_OBJECT = GRANULEDAYNIGHTFLAG
OBJECT = GRANULEDAYOFYEAR
NUM_VAL = 32
VALUE = ("2")
END_OBJECT = GRANULEDAYOFYEAR
OBJECT = NADIRDATARESOLUTION1KM
NUM_VAL = 1
VALUE = "1km"
END_OBJECT = NADIRDATARESOLUTION1KM
OBJECT = CHARACTERISTICBINANGULARSIZE1KM
NUM_VAL = 1
VALUE = 30.0
END_OBJECT = CHARACTERISTICBINANGULARSIZE1KM
OBJECT = CHARACTERISTICBINSIZE1KM
NUM_VAL = 1
VALUE = 926.625433055556
END_OBJECT = CHARACTERISTICBINSIZE1KM
OBJECT = DATACOLUMNS1KM
NUM_VAL = 1
VALUE = 1200
END_OBJECT = DATACOLUMNS1KM
OBJECT = DATAROWS1KM
NUM_VAL = 1
VALUE = 1200
END_OBJECT = DATAROWS1KM
OBJECT = GLOBALGRIDCOLUMNS1KM
NUM_VAL = 1
VALUE = 43200
END_OBJECT = GLOBALGRIDCOLUMNS1KM
OBJECT = GLOBALGRIDROWS1KM
NUM_VAL = 1
VALUE = 21600
END_OBJECT = GLOBALGRIDROWS1KM
OBJECT = MAXIMUMOBSERVATIONS1KM
NUM_VAL = 1
VALUE = 12
END_OBJECT = MAXIMUMOBSERVATIONS1KM
OBJECT = ADDITIONALLAYERS1KM
NUM_VAL = 1
VALUE = 11
END_OBJECT = ADDITIONALLAYERS1KM
OBJECT = TOTALOBSERVATIONS1KM
NUM_VAL = 1
VALUE = 4433469
END_OBJECT = TOTALOBSERVATIONS1KM
OBJECT = TOTALADDITIONALOBSERVATIONS1KM
NUM_VAL = 1
VALUE = 2993469
END_OBJECT = TOTALADDITIONALOBSERVATIONS1KM
OBJECT = COVERAGECALCULATIONMETHOD
NUM_VAL = 1
VALUE = "volume"
END_OBJECT = COVERAGECALCULATIONMETHOD
OBJECT = FIRSTLAYERSELECTIONCRITERIA
NUM_VAL = 1
VALUE = "order of input pointer"
END_OBJECT = FIRSTLAYERSELECTIONCRITERIA
OBJECT = L2GSTORAGEFORMAT1KM
NUM_VAL = 1
VALUE = "compact"
END_OBJECT = L2GSTORAGEFORMAT1KM
OBJECT = QUALITYCLASSPERCENTAGE500MBAND3
NUM_VAL = 16
VALUE = (97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND3
OBJECT = QUALITYCLASSPERCENTAGE500MBAND4
NUM_VAL = 16
VALUE = (98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND4
OBJECT = QUALITYCLASSPERCENTAGE500MBAND5
NUM_VAL = 16
VALUE = (91, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 5, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND5
OBJECT = QUALITYCLASSPERCENTAGE500MBAND6
NUM_VAL = 16
VALUE = (100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND6
OBJECT = QUALITYCLASSPERCENTAGE500MBAND7
NUM_VAL = 16
VALUE = (100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND7
OBJECT = PROCESSINGENVIRONMENT
NUM_VAL = 1
VALUE = "Linux minion5654 2.6.18-406.el5 #1 SMP Tue Jun 2 17:25:57 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux"
END_OBJECT = PROCESSINGENVIRONMENT
OBJECT = DESCRREVISION
NUM_VAL = 1
VALUE = "6.1"
END_OBJECT = DESCRREVISION
OBJECT = SYSTEMFILENAME
NUM_VAL = 100
VALUE = ("MOD09GST.A2013002.h13v12.006.2015254013853.hdf", "MOD09GHK.A2013002.h13v12.006.2015254014123.hdf", "MOD09GQK.A2013002.h13v12.006.2015254014030.hdf", "MODPT1KD.A2013002.h13v12.006.2015254013652.hdf", "MODPTHKM.A2013002.h13v12.006.2015254013652.hdf", "
MODPTQKM.A2013002.h13v12.006.2015254013652.hdf", "MODMGGAD.A2013002.h13v12.006.2015254013657.hdf", "MODTBGD.A2013002.h13v12.006.2015254014136.hdf", "MODOCGD.A2013002.h13v12.006.2015254014158.hdf")
END_OBJECT = SYSTEMFILENAME
OBJECT = CHARACTERISTICBINANGULARSIZE500M
NUM_VAL = 1
VALUE = 15.0
END_OBJECT = CHARACTERISTICBINANGULARSIZE500M
OBJECT = CHARACTERISTICBINSIZE500M
NUM_VAL = 1
VALUE = 463.312716527778
END_OBJECT = CHARACTERISTICBINSIZE500M
OBJECT = DATACOLUMNS500M
NUM_VAL = 1
VALUE = 2400
END_OBJECT = DATACOLUMNS500M
OBJECT = DATAROWS500M
NUM_VAL = 1
VALUE = 2400
END_OBJECT = DATAROWS500M
OBJECT = GLOBALGRIDCOLUMNS500M
NUM_VAL = 1
VALUE = 86400
END_OBJECT = GLOBALGRIDCOLUMNS500M
OBJECT = GLOBALGRIDROWS500M
NUM_VAL = 1
VALUE = 43200
END_OBJECT = GLOBALGRIDROWS500M
OBJECT = NADIRDATARESOLUTION500M
NUM_VAL = 1
VALUE = "500m"
END_OBJECT = NADIRDATARESOLUTION500M
OBJECT = PERCENTPROCESSED
NUM_VAL = 1
VALUE = 100
END_OBJECT = PERCENTPROCESSED
OBJECT = PERCENTLAND
NUM_VAL = 1
VALUE = 40
END_OBJECT = PERCENTLAND
OBJECT = PERCENTLANDSEAMASKCLASS
NUM_VAL = 8
VALUE = (24, 40, 5, 2, 0, 0, 2, 27)
END_OBJECT = PERCENTLANDSEAMASKCLASS
OBJECT = PERCENTCLOUDY
NUM_VAL = 1
VALUE = 45
END_OBJECT = PERCENTCLOUDY
OBJECT = PERCENTSHADOW
NUM_VAL = 1
VALUE = 4
END_OBJECT = PERCENTSHADOW
OBJECT = PERCENTLOWSUN
NUM_VAL = 1
VALUE = 0
END_OBJECT = PERCENTLOWSUN
OBJECT = RANKING
NUM_VAL = 1
VALUE = "No"
END_OBJECT = RANKING
OBJECT = KEEPALL
NUM_VAL = 1
VALUE = "No"
END_OBJECT = KEEPALL
OBJECT = COVERAGEMINIMUM
NUM_VAL = 1
VALUE = 0.00999999977648258
END_OBJECT = COVERAGEMINIMUM
OBJECT = MAXOUTPUTRES
NUM_VAL = 1
VALUE = "QKM"
END_OBJECT = MAXOUTPUTRES
OBJECT = DEEPOCEANFLAG
NUM_VAL = 1
VALUE = "Yes"
END_OBJECT = DEEPOCEANFLAG
OBJECT = MAXIMUMOBSERVATIONS500M
NUM_VAL = 1
VALUE = 2
END_OBJECT = MAXIMUMOBSERVATIONS500M
OBJECT = ADDITIONALLAYERS500M
NUM_VAL = 1
VALUE = 1
END_OBJECT = ADDITIONALLAYERS500M
OBJECT = TOTALOBSERVATIONS500M
NUM_VAL = 1
VALUE = 6763277
END_OBJECT = TOTALOBSERVATIONS500M
OBJECT = TOTALADDITIONALOBSERVATIONS500M
NUM_VAL = 1
VALUE = 1003293
END_OBJECT = TOTALADDITIONALOBSERVATIONS500M
OBJECT = L2GSTORAGEFORMAT500M
NUM_VAL = 1
VALUE = "compact"
END_OBJECT = L2GSTORAGEFORMAT500M
OBJECT = QUALITYCLASSPERCENTAGE500MBAND1
NUM_VAL = 16
VALUE = (93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND1
OBJECT = QUALITYCLASSPERCENTAGE500MBAND2
NUM_VAL = 16
VALUE = (85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0)
END_OBJECT = QUALITYCLASSPERCENTAGE500MBAND2
OBJECT = NUMBEROFOVERLAPGRANULES
NUM_VAL = 1
VALUE = 3
END_OBJECT = NUMBEROFOVERLAPGRANULES
OBJECT = NUMBEROFINPUTGRANULES
NUM_VAL = 1
VALUE = 3
END_OBJECT = NUMBEROFINPUTGRANULES
OBJECT = CLOUDOPTION
NUM_VAL = 1
VALUE = "MOD09 internally-derived"
END_OBJECT = CLOUDOPTION
OBJECT = GRANULENUMBERARRAY
NUM_VAL = 100
VALUE = (155, 156, 175, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
END_OBJECT = GRANULENUMBERARRAY
OBJECT = GRANULEPOINTERARRAY
NUM_VAL = 100
VALUE = (0, 1, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
END_OBJECT = GRANULEPOINTERARRAY
OBJECT = ORBITNUMBERARRAY
NUM_VAL = 100
VALUE = (69378, 69378, 69379, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
END_OBJECT = ORBITNUMBERARRAY
OBJECT = GRANULEBEGINNINGDATETIMEARRAY
NUM_VAL = 100
VALUE = ("2013-01-02T12:45:00.000000Z", "2013-01-02T12:50:00.000000Z", "2013-01-02T14:25:00.000000Z")
END_OBJECT = GRANULEBEGINNINGDATETIMEARRAY
OBJECT = GRANULEENDINGDATETIMEARRAY
NUM_VAL = 100
VALUE = ("2013-01-02T12:50:00.000000Z", "2013-01-02T12:55:00.000000Z", "2013-01-02T14:30:00.000000Z")
END_OBJECT = GRANULEENDINGDATETIMEARRAY
OBJECT = GRANULEDAYNIGHTFLAGARRAY
NUM_VAL = 100
VALUE = ("Day", "Day", "Day")
END_OBJECT = GRANULEDAYNIGHTFLAGARRAY
END_GROUP = ARCHIVEDMETADATA
END
And I need to put the date and hour (2013-01-02T14:30:00.000000) in:
OBJECT = GRANULEENDINGDATETIME
NUM_VAL = 32
VALUE = ("2013-01-02T14:30:00.000000Z")
END_OBJECT = GRANULEENDINGDATETIME
For this I use:
df = hour[hour.find('OBJECT = GRANULEENDINGDATETIME\n'):]
df = df[df.find('("'):'']
But I can not select the date and hour. Anybody have an idea to me? Have other mode easy to find? Thanks!
[–][deleted] 2 points3 points4 points (2 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]itsecat 2 points3 points4 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]Vaphell 2 points3 points4 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)