Bir zaman damgası dizinine sahip bir panda veri karesini saat başına bir örneğe yeniden örneklemeye çalışıyorum. String değerleri ile bir sütun için en sık değeri elde etmek istiyorum. Bununla birlikte, zaman dizisi yeniden örneklemenin yerleşik işlevleri, yeniden örneklemenin varsayılan yöntemlerinden biri olarak modu içermez ('anlamına gelir' ve 'saymak').
Kendi işlevimi tanımlamayı ve bu işlevi iletmeyi denedim, ancak çalışmıyor. Ayrıca np.bincount
işlevini kullanmayı denedim, ancak dizelerle çalıştığım için çalışmaz.Pandalarla yeniden örnekleme yaparken dize değişkeni modu nasıl elde edilir
station_arrived action lat1 lon1
date_removed
2012-01-01 13:12:00 56 A 19.4171 -99.16561
2012-01-01 13:12:00 56 A 19.4271 -99.16361
2012-01-01 15:41:00 56 A 19.4171 -99.16561
2012-01-02 08:41:00 56 C 19.4271 -99.16561
2012-01-02 11:36:00 56 C 19.2171 -99.16561
Bu benim kod şimdiye kadar geçerli:: dict
Traceback (most recent call last):
File "<stdin>", line 3, in <module>
File "C:\Program Files\Anaconda\lib\site-packages\pandas\core\generic.py", line 2836, in resample
return sampler.resample(self).__finalize__(self)
File "C:\Program Files\Anaconda\lib\site-packages\pandas\tseries\resample.py", line 83, in resample
rs = self._resample_timestamps()
File "C:\Program Files\Anaconda\lib\site-packages\pandas\tseries\resample.py", line 277, in _resample_timestamps
result = grouped.aggregate(self._agg_method)
File "C:\Program Files\Anaconda\lib\site-packages\pandas\core\groupby.py", line 2404, in aggregate
result[col] = colg.aggregate(agg_how)
File "C:\Program Files\Anaconda\lib\site-packages\pandas\core\groupby.py", line 2076, in aggregate
ret = self._aggregate_multiple_funcs(func_or_funcs)
File "C:\Program Files\Anaconda\lib\site-packages\pandas\core\groupby.py", line 2125, in _aggregate_multiple_funcs
results[name] = self.aggregate(func)
File "C:\Program Files\Anaconda\lib\site-packages\pandas\core\groupby.py", line 2073, in aggregate
return getattr(self, func_or_funcs)(*args, **kwargs)
File "C:\Program Files\Anaconda\lib\site-packages\pandas\core\groupby.py", line 486, in __getattr__
(type(self).__name__, attr))
AttributeError: 'SeriesGroupBy' object has no attribute 'A '
sayesinde ikinci seçeneği, her bir grup için modu hesaplamak için tanımlı fonksiyon kullanıyor aradığım sadece ne. Bu komik, daha önce benzer bir çözüm denedim ama nedense işe yaramadı. – asado23