minhas informações de contato
Correspondência[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Índice
1. Explicação detalhada do uso
25. função pandas.HDFStore.get
26. função pandas.HDFStore.select
27. função pandas.HDFStore.info
1. Jornada de construção da base Python
3. Jornada do Algoritmo Python
5. Página inicial pessoal do blog
- # 25、pandas.HDFStore.get函数
- HDFStore.get(key)
- Retrieve pandas object stored in file.
-
- Parameters:
- key
- str
- Returns:
- object
- Same type as object stored in file.
25-2-1, chave(deve):Uma string que especifica o local ou nome no arquivo HDF5 dos dados a serem recuperados. Essa chave geralmente corresponde ao nome ou caminho usado ao salvar os dados no arquivo HDF5.
Usado para recuperar (ou obter) dados armazenados de arquivos HDF5.
De modo geral, esta função retornará o objeto pandas associado à chave, como um DataFrame, Série ou outro contêiner pandas possível.
Especificamente, o valor de retorno pode ser:
25-4-1、Quadro de dados : Se os dados associados à chave armazenada no arquivo HDF5 forem uma tabela ou estrutura de dados semelhante a uma tabela, o método get retornará um objeto DataFrame. DataFrame é a principal estrutura de dados usada no pandas para armazenar e manipular dados estruturados. Ele armazena dados em formato tabular, contendo linhas e colunas.
25-4-2、Série: Em alguns casos, se os dados armazenados forem unidimensionais, como dados de série temporal ou dados de uma única coluna, o método get pode retornar um objeto Series Series é usado em pandas para armazenar dados unidimensionais (ou seja, com matriz de índices) estrutura de dados.
25-4-3. Outros objetos pandas. : Embora menos comuns, os arquivos HDF5 podem, teoricamente, armazenar outros tipos de objetos pandas, como Painéis (nota: a partir da versão 0.25.0 do pandas, o Painel foi descontinuado e removido da biblioteca do pandas). No entanto, à medida que os pandas evoluíram, esta situação tornou-se cada vez mais rara.
25-4-4, Nenhum ou valor padrão : se a chave especificada não existir no arquivo HDF5 e o método get não fornecer um valor padrão como o segundo parâmetro, poderá gerar um KeyError. No entanto, se um valor padrão for fornecido (embora este não seja um comportamento padrão para métodos get, já que os métodos get geralmente não suportam diretamente argumentos de valor padrão no HDFStore), este pode ser o caso do DataFrame.pegar ofuscação do método), então ele retornará esse valor padrão. No entanto, no contexto do HDFStore, é mais comum usar um bloco try-except para capturar KeyError e tratar o caso, se necessário.
nenhum
无
- # 25、pandas.HDFStore.get函数
- import pandas as pd
- # 创建一个示例的DataFrame
- data = pd.DataFrame({
- 'A': [1, 2, 3, 4],
- 'B': ['foo', 'bar', 'foo', 'bar'],
- 'C': [0.1, 0.2, 0.3, 0.4]
- })
- # 将数据保存到HDF5文件中
- filename = 'example.h5'
- key = 'data'
- data.to_hdf(filename, key=key, format='table', mode='w')
- # 从HDF5文件中读取数据
- with pd.HDFStore(filename, mode='r') as store:
- df_from_hdf = store.get(key)
- # 打印读取的数据
- print("Data read from HDF5:")
- print(df_from_hdf)
- # 25、pandas.HDFStore.get函数
- # Data read from HDF5:
- # A B C
- # 0 1 foo 0.1
- # 1 2 bar 0.2
- # 2 3 foo 0.3
- # 3 4 bar 0.4
- # 26、pandas.HDFStore.select函数
- HDFStore.select(key, where=None, start=None, stop=None, columns=None, iterator=False, chunksize=None, auto_close=False)
- Retrieve pandas object stored in file, optionally based on where criteria.
-
- Warning
-
- Pandas uses PyTables for reading and writing HDF5 files, which allows serializing object-dtype data with pickle when using the “fixed” format. Loading pickled data received from untrusted sources can be unsafe.
-
- See: https://docs.python.org/3/library/pickle.html for more.
-
- Parameters:
- key
- str
- Object being retrieved from file.
-
- where
- list or None
- List of Term (or convertible) objects, optional.
-
- start
- int or None
- Row number to start selection.
-
- stop
- int, default None
- Row number to stop selection.
-
- columns
- list or None
- A list of columns that if not None, will limit the return columns.
-
- iterator
- bool or False
- Returns an iterator.
-
- chunksize
- int or None
- Number or rows to include in iteration, return an iterator.
-
- auto_close
- bool or False
- Should automatically close the store when finished.
-
- Returns:
- object
- Retrieved object from file.
26-2-1, chave(deve):A chave (ou caminho) no arquivo HDF5 a ser recuperado, geralmente é o nome ou caminho especificado ao salvar dados no arquivo HDF5.
26-2-2, onde(opcional, o valor padrão é Nenhum): Expressão condicional usada para filtrar dados. Se for uma string, deve ser uma string de consulta válida do Pandas, semelhante àquela usada ao usar o método .query() no DataFrame; se for um objeto que pode ser chamado (como uma função), deve aceitar um DataFrame; como entrada e retorna uma sequência booleana indicando quais linhas devem ser selecionadas.
26-2-3、iniciar/parar(opcional, o valor padrão é Nenhum):O índice inicial/final das linhas a serem recuperadas (com base em 0). Se início e parada forem especificados, somente as linhas entre esses dois índices serão recuperadas (incluindo início, mas não incluindo parada).
26-2-4, colunas(opcional, o valor padrão é Nenhum):Uma lista de nomes de colunas ou um único nome de coluna a ser recuperado. Se esse parâmetro for especificado, somente os dados dessas colunas serão recuperados.
26-2-5, iterador(opcional, o valor padrão é False):Se for True, retorna um iterador que gera os dados pedaço por pedaço, em vez de carregar todo o conjunto de dados na memória de uma só vez, o que é útil para processar grandes conjuntos de dados.
26-2-6, tamanho do pedaço(opcional, o valor padrão é Nenhum):Quando iterator=True, este parâmetro especifica o número de linhas em cada bloco, o que permite controlar o uso de memória e pode melhorar o desempenho ao processar grandes conjuntos de dados.
26-2-7,fechamento automático(opcional, o valor padrão é False): Se for True, o armazenamento será fechado automaticamente quando o iterador se esgotar ou ocorrer uma exceção, o que ajuda a garantir que o arquivo seja fechado corretamente mesmo quando ocorrer um erro. No entanto, observe que se você planeja continuar usando objetos HDFStore após o esgotamento do iterador, você deve definir este parâmetro como False.
Recupere objetos pandas (como DataFrame ou Series) armazenados sob uma chave específica de um arquivo HDF5 e permita ao usuário filtrar ou controlar os dados recuperados com base em uma série de parâmetros.
O valor de retorno depende do tipo de dados associado à chave armazenada no arquivo HDF5 e das condições de consulta (se houver). Normalmente, o valor de retorno é um objeto pandas, como:
26-4-1、Quadro de dados: Se os dados recuperados estiverem em formato tabular, um objeto DataFrame será retornado.
26-4-2、Série: se os dados recuperados forem unidimensionais (por exemplo, dados de uma única coluna), um objeto Series poderá ser retornado, embora isso geralmente ocorra quando uma única coluna é especificada explicitamente como o parâmetro de colunas.
26-4-3. Outros objetos pandas.: Em teoria, poderiam ser outros contêineres pandas também, mas no contexto de arquivos HDF5 os mais comuns são DataFrame e Series.
nenhum
无
- # 26、pandas.HDFStore.select函数
- import pandas as pd
- import numpy as np
- # 创建一个示例DataFrame
- np.random.seed(0) # 设置随机种子以确保结果可重复
- data = pd.DataFrame({
- 'A': np.random.randn(100),
- 'B': np.random.randn(100),
- 'C': np.random.randn(100),
- 'D': np.random.randint(0, 2, 100)
- })
- # 将DataFrame保存到HDF5文件中
- with pd.HDFStore('example.h5') as store:
- store.put('data', data, format='table')
- # 从HDF5文件中检索数据的示例
- with pd.HDFStore('example.h5') as store:
- # 选择所有数据
- print("nAll data:")
- all_data = store.select('data')
- print(all_data.head()) # 只打印前几行以节省空间
- # 选择特定的列
- print("nSpecific columns (A, B):")
- specific_columns = store.select('data', columns=['A', 'B'])
- print(specific_columns.head())
- # 选择部分数据行(注意:HDF5的索引可能不是从0开始的,但这里假设它是)
- print("nPartial data (rows 10 to 19):")
- partial_data = store.select('data', start=10, stop=20)
- print(partial_data)
- # 使用chunksize来逐块读取数据
- print("nData read in chunks:")
- chunks = store.select('data', chunksize=10)
- for i, chunk in enumerate(chunks):
- print(f"Chunk {i + 1}:")
- print(chunk.head()) # 只打印每个块的前几行
- # 26、pandas.HDFStore.select函数
- # All data:
- # A B C D
- # 0 1.764052 1.883151 -0.369182 0
- # 1 0.400157 -1.347759 -0.239379 0
- # 2 0.978738 -1.270485 1.099660 1
- # 3 2.240893 0.969397 0.655264 1
- # 4 1.867558 -1.173123 0.640132 0
- #
- # Specific columns (A, B):
- # A B
- # 0 1.764052 1.883151
- # 1 0.400157 -1.347759
- # 2 0.978738 -1.270485
- # 3 2.240893 0.969397
- # 4 1.867558 -1.173123
- #
- # Partial data (rows 10 to 19):
- # A B C D
- # 10 0.144044 1.867559 0.910179 0
- # 11 1.454274 0.906045 0.317218 0
- # 12 0.761038 -0.861226 0.786328 1
- # 13 0.121675 1.910065 -0.466419 0
- # 14 0.443863 -0.268003 -0.944446 0
- # 15 0.333674 0.802456 -0.410050 0
- # 16 1.494079 0.947252 -0.017020 1
- # 17 -0.205158 -0.155010 0.379152 1
- # 18 0.313068 0.614079 2.259309 0
- # 19 -0.854096 0.922207 -0.042257 0
- #
- # Data read in chunks:
- # Chunk 1:
- # A B C D
- # 0 1.764052 1.883151 -0.369182 0
- # 1 0.400157 -1.347759 -0.239379 0
- # 2 0.978738 -1.270485 1.099660 1
- # 3 2.240893 0.969397 0.655264 1
- # 4 1.867558 -1.173123 0.640132 0
- # Chunk 2:
- # A B C D
- # 10 0.144044 1.867559 0.910179 0
- # 11 1.454274 0.906045 0.317218 0
- # 12 0.761038 -0.861226 0.786328 1
- # 13 0.121675 1.910065 -0.466419 0
- # 14 0.443863 -0.268003 -0.944446 0
- # Chunk 3:
- # A B C D
- # 20 -2.552990 0.376426 -0.955945 0
- # 21 0.653619 -1.099401 -0.345982 1
- # 22 0.864436 0.298238 -0.463596 0
- # 23 -0.742165 1.326386 0.481481 0
- # 24 2.269755 -0.694568 -1.540797 1
- # Chunk 4:
- # A B C D
- # 30 0.154947 -0.769916 -1.424061 1
- # 31 0.378163 0.539249 -0.493320 0
- # 32 -0.887786 -0.674333 -0.542861 0
- # 33 -1.980796 0.031831 0.416050 1
- # 34 -0.347912 -0.635846 -1.156182 1
- # Chunk 5:
- # A B C D
- # 40 -1.048553 -1.491258 -0.637437 0
- # 41 -1.420018 0.439392 -0.397272 1
- # 42 -1.706270 0.166673 -0.132881 0
- # 43 1.950775 0.635031 -0.297791 0
- # 44 -0.509652 2.383145 -0.309013 0
- # Chunk 6:
- # A B C D
- # 50 -0.895467 -0.068242 0.521065 1
- # 51 0.386902 1.713343 -0.575788 1
- # 52 -0.510805 -0.744755 0.141953 0
- # 53 -1.180632 -0.826439 -0.319328 0
- # 54 -0.028182 -0.098453 0.691539 1
- # Chunk 7:
- # A B C D
- # 60 -0.672460 -0.498032 -1.188859 1
- # 61 -0.359553 1.929532 -0.506816 1
- # 62 -0.813146 0.949421 -0.596314 0
- # 63 -1.726283 0.087551 -0.052567 0
- # 64 0.177426 -1.225436 -1.936280 0
- # Chunk 8:
- # A B C D
- # 70 0.729091 0.920859 0.399046 0
- # 71 0.128983 0.318728 -2.772593 1
- # 72 1.139401 0.856831 1.955912 0
- # 73 -1.234826 -0.651026 0.390093 1
- # 74 0.402342 -1.034243 -0.652409 1
- # Chunk 9:
- # A B C D
- # 80 -1.165150 -0.353994 -0.110541 0
- # 81 0.900826 -1.374951 1.020173 0
- # 82 0.465662 -0.643618 -0.692050 1
- # 83 -1.536244 -2.223403 1.536377 0
- # 84 1.488252 0.625231 0.286344 0
- # Chunk 10:
- # A B C D
- # 90 -0.403177 -1.292857 -0.628088 1
- # 91 1.222445 0.267051 -0.481027 1
- # 92 0.208275 -0.039283 2.303917 0
- # 93 0.976639 -1.168093 -1.060016 1
- # 94 0.356366 0.523277 -0.135950 0
- # 27、pandas.HDFStore.info函数
- HDFStore.info()
- Print detailed information on the store.
-
- Returns:
- str
nenhum
Fornece informações detalhadas sobre os conjuntos de dados (também chamados de chaves ou nós) armazenados em arquivos HDF5.
Não há valor de retorno direto (ou seja, nenhum dado é retornado para a variável), mas as informações são impressas no console (ou na saída padrão).
nenhum
无
- # 27、pandas.HDFStore.info函数
- import pandas as pd
- import numpy as np
- # 创建一个包含随机数的数据帧
- data = pd.DataFrame({
- 'A': np.random.randn(100),
- 'B': np.random.randn(100),
- 'C': np.random.randn(100),
- 'D': np.random.randint(0, 2, 100)
- })
- # 将数据写入HDF5文件
- with pd.HDFStore('example.h5') as store:
- store.put('data', data, format='table')
- # 使用HDFStore.info()函数获取HDF5文件的信息
- with pd.HDFStore('example.h5') as store:
- # 打印存储的信息
- store.info()
- # 读取数据以确认
- all_data = store.select('data')
- print("nAll data (first 5 rows):")
- print(all_data.head())
- # 27、pandas.HDFStore.info函数
- # All data (first 5 rows):
- # A B C D
- # 0 -1.186803 -0.983345 0.661022 1
- # 1 0.549244 -0.429500 -0.022329 1
- # 2 1.408989 0.779268 0.079574 1
- # 3 -1.178696 0.918125 0.174332 0
- # 4 -0.538677 -0.124535 -1.165208 1