Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.9/dist-packages/pandas/core/internals/__init__.py: 38%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

29 statements  

1from pandas.core.internals.api import make_block # 2023-09-18 pyarrow uses this 

2from pandas.core.internals.array_manager import ( 

3 ArrayManager, 

4 SingleArrayManager, 

5) 

6from pandas.core.internals.base import ( 

7 DataManager, 

8 SingleDataManager, 

9) 

10from pandas.core.internals.concat import concatenate_managers 

11from pandas.core.internals.managers import ( 

12 BlockManager, 

13 SingleBlockManager, 

14) 

15 

16__all__ = [ 

17 "Block", # pylint: disable=undefined-all-variable 

18 "DatetimeTZBlock", # pylint: disable=undefined-all-variable 

19 "ExtensionBlock", # pylint: disable=undefined-all-variable 

20 "make_block", 

21 "DataManager", 

22 "ArrayManager", 

23 "BlockManager", 

24 "SingleDataManager", 

25 "SingleBlockManager", 

26 "SingleArrayManager", 

27 "concatenate_managers", 

28] 

29 

30 

31def __getattr__(name: str): 

32 # GH#55139 

33 import warnings 

34 

35 if name == "create_block_manager_from_blocks": 

36 # GH#33892 

37 warnings.warn( 

38 f"{name} is deprecated and will be removed in a future version. " 

39 "Use public APIs instead.", 

40 DeprecationWarning, 

41 # https://github.com/pandas-dev/pandas/pull/55139#pullrequestreview-1720690758 

42 # on hard-coding stacklevel 

43 stacklevel=2, 

44 ) 

45 from pandas.core.internals.managers import create_block_manager_from_blocks 

46 

47 return create_block_manager_from_blocks 

48 

49 if name in [ 

50 "NumericBlock", 

51 "ObjectBlock", 

52 "Block", 

53 "ExtensionBlock", 

54 "DatetimeTZBlock", 

55 ]: 

56 warnings.warn( 

57 f"{name} is deprecated and will be removed in a future version. " 

58 "Use public APIs instead.", 

59 DeprecationWarning, 

60 # https://github.com/pandas-dev/pandas/pull/55139#pullrequestreview-1720690758 

61 # on hard-coding stacklevel 

62 stacklevel=2, 

63 ) 

64 if name == "NumericBlock": 

65 from pandas.core.internals.blocks import NumericBlock 

66 

67 return NumericBlock 

68 elif name == "DatetimeTZBlock": 

69 from pandas.core.internals.blocks import DatetimeTZBlock 

70 

71 return DatetimeTZBlock 

72 elif name == "ExtensionBlock": 

73 from pandas.core.internals.blocks import ExtensionBlock 

74 

75 return ExtensionBlock 

76 elif name == "Block": 

77 from pandas.core.internals.blocks import Block 

78 

79 return Block 

80 else: 

81 from pandas.core.internals.blocks import ObjectBlock 

82 

83 return ObjectBlock 

84 

85 raise AttributeError(f"module 'pandas.core.internals' has no attribute '{name}'")