238
238
_testing_mode_warnings = (DeprecationWarning , ResourceWarning )
239
239
240
240
241
- def set_testing_mode ():
241
+ def set_testing_mode () -> None :
242
242
# set the testing mode filters
243
243
testing_mode = os .environ .get ("PANDAS_TESTING_MODE" , "None" )
244
244
if "deprecate" in testing_mode :
245
245
for category in _testing_mode_warnings :
246
246
warnings .simplefilter ("always" , category )
247
247
248
248
249
- def reset_testing_mode ():
249
+ def reset_testing_mode () -> None :
250
250
# reset the testing mode filters
251
251
testing_mode = os .environ .get ("PANDAS_TESTING_MODE" , "None" )
252
252
if "deprecate" in testing_mode :
@@ -257,7 +257,7 @@ def reset_testing_mode():
257
257
set_testing_mode ()
258
258
259
259
260
- def reset_display_options ():
260
+ def reset_display_options () -> None :
261
261
"""
262
262
Reset the display options for printing and representing objects.
263
263
"""
@@ -333,38 +333,38 @@ def to_array(obj):
333
333
# Others
334
334
335
335
336
- def getCols (k ):
336
+ def getCols (k ) -> str :
337
337
return string .ascii_uppercase [:k ]
338
338
339
339
340
340
# make index
341
- def makeStringIndex (k = 10 , name = None ):
341
+ def makeStringIndex (k = 10 , name = None ) -> Index :
342
342
return Index (rands_array (nchars = 10 , size = k ), name = name )
343
343
344
344
345
- def makeCategoricalIndex (k = 10 , n = 3 , name = None , ** kwargs ):
345
+ def makeCategoricalIndex (k = 10 , n = 3 , name = None , ** kwargs ) -> CategoricalIndex :
346
346
"""make a length k index or n categories"""
347
347
x = rands_array (nchars = 4 , size = n , replace = False )
348
348
return CategoricalIndex (
349
349
Categorical .from_codes (np .arange (k ) % n , categories = x ), name = name , ** kwargs
350
350
)
351
351
352
352
353
- def makeIntervalIndex (k = 10 , name = None , ** kwargs ):
353
+ def makeIntervalIndex (k = 10 , name = None , ** kwargs ) -> IntervalIndex :
354
354
"""make a length k IntervalIndex"""
355
355
x = np .linspace (0 , 100 , num = (k + 1 ))
356
356
return IntervalIndex .from_breaks (x , name = name , ** kwargs )
357
357
358
358
359
- def makeBoolIndex (k = 10 , name = None ):
359
+ def makeBoolIndex (k = 10 , name = None ) -> Index :
360
360
if k == 1 :
361
361
return Index ([True ], name = name )
362
362
elif k == 2 :
363
363
return Index ([False , True ], name = name )
364
364
return Index ([False , True ] + [False ] * (k - 2 ), name = name )
365
365
366
366
367
- def makeNumericIndex (k = 10 , name = None , * , dtype ):
367
+ def makeNumericIndex (k = 10 , name = None , * , dtype ) -> NumericIndex :
368
368
dtype = pandas_dtype (dtype )
369
369
assert isinstance (dtype , np .dtype )
370
370
@@ -382,21 +382,21 @@ def makeNumericIndex(k=10, name=None, *, dtype):
382
382
return NumericIndex (values , dtype = dtype , name = name )
383
383
384
384
385
- def makeIntIndex (k = 10 , name = None ):
385
+ def makeIntIndex (k = 10 , name = None ) -> Int64Index :
386
386
base_idx = makeNumericIndex (k , name = name , dtype = "int64" )
387
387
return Int64Index (base_idx )
388
388
389
389
390
- def makeUIntIndex (k = 10 , name = None ):
390
+ def makeUIntIndex (k = 10 , name = None ) -> UInt64Index :
391
391
base_idx = makeNumericIndex (k , name = name , dtype = "uint64" )
392
392
return UInt64Index (base_idx )
393
393
394
394
395
- def makeRangeIndex (k = 10 , name = None , ** kwargs ):
395
+ def makeRangeIndex (k = 10 , name = None , ** kwargs ) -> RangeIndex :
396
396
return RangeIndex (0 , k , 1 , name = name , ** kwargs )
397
397
398
398
399
- def makeFloatIndex (k = 10 , name = None ):
399
+ def makeFloatIndex (k = 10 , name = None ) -> Float64Index :
400
400
base_idx = makeNumericIndex (k , name = name , dtype = "float64" )
401
401
return Float64Index (base_idx )
402
402
@@ -456,57 +456,57 @@ def all_timeseries_index_generator(k: int = 10) -> Iterable[Index]:
456
456
457
457
458
458
# make series
459
- def make_rand_series (name = None , dtype = np .float64 ):
459
+ def make_rand_series (name = None , dtype = np .float64 ) -> Series :
460
460
index = makeStringIndex (_N )
461
461
data = np .random .randn (_N )
462
462
data = data .astype (dtype , copy = False )
463
463
return Series (data , index = index , name = name )
464
464
465
465
466
- def makeFloatSeries (name = None ):
466
+ def makeFloatSeries (name = None ) -> Series :
467
467
return make_rand_series (name = name )
468
468
469
469
470
- def makeStringSeries (name = None ):
470
+ def makeStringSeries (name = None ) -> Series :
471
471
return make_rand_series (name = name )
472
472
473
473
474
- def makeObjectSeries (name = None ):
474
+ def makeObjectSeries (name = None ) -> Series :
475
475
data = makeStringIndex (_N )
476
476
data = Index (data , dtype = object )
477
477
index = makeStringIndex (_N )
478
478
return Series (data , index = index , name = name )
479
479
480
480
481
- def getSeriesData ():
481
+ def getSeriesData () -> dict [ str , Series ] :
482
482
index = makeStringIndex (_N )
483
483
return {c : Series (np .random .randn (_N ), index = index ) for c in getCols (_K )}
484
484
485
485
486
- def makeTimeSeries (nper = None , freq = "B" , name = None ):
486
+ def makeTimeSeries (nper = None , freq = "B" , name = None ) -> Series :
487
487
if nper is None :
488
488
nper = _N
489
489
return Series (
490
490
np .random .randn (nper ), index = makeDateIndex (nper , freq = freq ), name = name
491
491
)
492
492
493
493
494
- def makePeriodSeries (nper = None , name = None ):
494
+ def makePeriodSeries (nper = None , name = None ) -> Series :
495
495
if nper is None :
496
496
nper = _N
497
497
return Series (np .random .randn (nper ), index = makePeriodIndex (nper ), name = name )
498
498
499
499
500
- def getTimeSeriesData (nper = None , freq = "B" ):
500
+ def getTimeSeriesData (nper = None , freq = "B" ) -> dict [ str , Series ] :
501
501
return {c : makeTimeSeries (nper , freq ) for c in getCols (_K )}
502
502
503
503
504
- def getPeriodData (nper = None ):
504
+ def getPeriodData (nper = None ) -> dict [ str , Series ] :
505
505
return {c : makePeriodSeries (nper ) for c in getCols (_K )}
506
506
507
507
508
508
# make frame
509
- def makeTimeDataFrame (nper = None , freq = "B" ):
509
+ def makeTimeDataFrame (nper = None , freq = "B" ) -> DataFrame :
510
510
data = getTimeSeriesData (nper , freq )
511
511
return DataFrame (data )
512
512
@@ -533,14 +533,19 @@ def makeMixedDataFrame():
533
533
return DataFrame (getMixedTypeDict ()[1 ])
534
534
535
535
536
- def makePeriodFrame (nper = None ):
536
+ def makePeriodFrame (nper = None ) -> DataFrame :
537
537
data = getPeriodData (nper )
538
538
return DataFrame (data )
539
539
540
540
541
541
def makeCustomIndex (
542
- nentries , nlevels , prefix = "#" , names = False , ndupe_l = None , idx_type = None
543
- ):
542
+ nentries ,
543
+ nlevels ,
544
+ prefix = "#" ,
545
+ names : bool | str | list [str ] | None = False ,
546
+ ndupe_l = None ,
547
+ idx_type = None ,
548
+ ) -> Index :
544
549
"""
545
550
Create an index/multindex with given dimensions, levels, names, etc'
546
551
@@ -637,7 +642,8 @@ def keyfunc(x):
637
642
# convert tuples to index
638
643
if nentries == 1 :
639
644
# we have a single level of tuples, i.e. a regular Index
640
- index = Index (tuples [0 ], name = names [0 ])
645
+ name = None if names is None else names [0 ]
646
+ index = Index (tuples [0 ], name = name )
641
647
elif nlevels == 1 :
642
648
name = None if names is None else names [0 ]
643
649
index = Index ((x [0 ] for x in tuples ), name = name )
@@ -659,7 +665,7 @@ def makeCustomDataframe(
659
665
dtype = None ,
660
666
c_idx_type = None ,
661
667
r_idx_type = None ,
662
- ):
668
+ ) -> DataFrame :
663
669
"""
664
670
Create a DataFrame using supplied parameters.
665
671
@@ -780,7 +786,7 @@ def _gen_unique_rand(rng, _extra_size):
780
786
return i .tolist (), j .tolist ()
781
787
782
788
783
- def makeMissingDataframe (density = 0.9 , random_state = None ):
789
+ def makeMissingDataframe (density = 0.9 , random_state = None ) -> DataFrame :
784
790
df = makeDataFrame ()
785
791
i , j = _create_missing_idx (* df .shape , density = density , random_state = random_state )
786
792
df .values [i , j ] = np .nan
@@ -854,7 +860,7 @@ def skipna_wrapper(x):
854
860
return skipna_wrapper
855
861
856
862
857
- def convert_rows_list_to_csv_str (rows_list : list [str ]):
863
+ def convert_rows_list_to_csv_str (rows_list : list [str ]) -> str :
858
864
"""
859
865
Convert list of CSV rows to single CSV-formatted string for current OS.
860
866
0 commit comments