首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

xarray | 数据结构(3)

xarray中的坐标有两种类型: 维度坐标 是名称和唯一的维度名称相同的1D数组(打印Dataset或 DataArray时 *号标记的变量)。...用于基于标签的索引和对齐操作,就像 pandas 中的 DataFrame 和 Series 的索引。事实上,这些维度坐标内部使用的是 pandas.Index 存储其值。...非维度坐标 是包含坐标数据的变量,但不是维度坐标。它们可以是多维的,而且非维度坐标名称和它的维度名称没有关系。非维度坐标在绘图或索引时非常有用。除此之外, xarray 不会限制使用与其相关的值。...reference_time datetime64[ns] 2014-09-05 day (time) int32 6 7 8 注意:除了维度坐标变量之外,其余的非维度坐标变量均转换为坐标变量...索引 使用 .to_index 方法可以将坐标转换为 pandas.Index: >> ds['time'].to_index() DatetimeIndex(['2014-09-06', '2014-

1.8K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Pandas图鉴(四):MultiIndex

    你也可以在事后用append=True将现有的级别追加到MultiIndex中,正如你在下图中看到的那样: 其实更典型的是Pandas,当有一些具有某种属性的对象时,特别是当它们随着时间的推移而演变时...这意味着你不能用它来实现df[:, 'population'],而不需要转置DataFrame(除非所有列都是相同的类型,否则会丢失类型)。...将MultiIndex转换为flat的索引并将其恢复 方便的查询方法只解决了处理行中MultiIndex的复杂性。...将多索引DataFrame读入和写入磁盘 Pandas可以以完全自动化的方式将一个带有MultiIndex的DataFrame写入CSV文件:df.to_csv('df.csv')。...然而,在读取这样的文件时,Pandas无法自动解析MultiIndex,需要用户提供一些提示。

    62120

    Pandas 2.2 中文官方教程和指南(十二·二)

    使用分层索引进行高级索引 在使用.loc进行高级索引时,将MultiIndex在语法上整合在一起有点具有挑战性,但我们已经尽力做到了。一般来说,MultiIndex 键采用元组的形式。...int64 数据类型的 Index,对 RangeIndex 进行操作,其结果无法由 RangeIndex 表示,但应具有整数数据类型,并将转换为具有 int64 的 Index。...int64 dtype 的 Index,对 RangeIndex 的操作,其结果不能由 RangeIndex 表示,但应该具有整数 dtype,将转换为具有 int64 的 Index。...非单调索引需要精确匹配 如果 Series 或 DataFrame 的索引单调递增或递减,则标签的边界可以超出索引的范围,就像对普通 Python list 进行切片索引一样。...非单调索引需要精确匹配 如果Series或DataFrame的索引是单调递增或递减的,则基于标签的切片的边界可以超出索引的范围,就像切片索引正常的 Python list一样。

    53010

    Pandas 2.2 中文官方教程和指南(九·一)

    例如,当添加两个 DataFrame 对象时,您可能希望将 NaN 视为 0,除非两个 DataFrame 都缺少该值,此时结果将为 NaN(如果需要,您可以稍后使用 fillna 将 NaN 替换为其他值...Series 中唯一非 NA 值的数量: In [90]: series = pd.Series(np.random.randn(500)) In [91]: series[20:500] = np.nan...对于非数字 Series 对象,describe() 将提供关于唯一值数量和最频繁出现值的简单摘要: In [101]: s = pd.Series(["a", "a", "b", "b", "a",...您将获得所有聚合器的类似矩阵的输出。输出将包含所有唯一的函数。...这将行转换为 Series 对象,可以更改数据类型并具有一些性能影响。 itertuples():以值的 namedtuples 形式迭代 DataFrame 的行。

    19900

    xarray | 数据结构(1)

    具有如下特性: values: 包含数组值的 numpy.ndarray dims: 每个轴的维度名 (比如: ('x', 'y', 'z')) coords: 包含了每一个点信息的类字典容器 (比如...基于 pandas 中 DataFrame 和 Series 的索引功能,坐标可进行更快速的索引和对齐操作。 DataArray 对象有 name 和 attrs 属性,attrs 包含了元数据信息。...每个值必须是以下形式: DataArray 或 Variable (dims, data [, attrs]) 形式的元组,然后被转换为 Variable 的参数 被转换为 DataArray 的 pandas...Series,DataFrame或Panel来创建 DataArray,其它没有指定数值的参数都会用 pandas 对象填充: >> df = pd.DataFrame({'x': [0, 1], 'y...'IN' >> foo.attrs OrderedDict() 利用 values 属性可以直接修改其数值: foo.values = 2.0 * foo.values 注: DataArray 中的数值具有相同的类型

    2.5K20

    Pandas 2.2 中文官方教程和指南(十一·二)

    注意 在应用可调用对象之前,将元组键解构为行(和列)索引,因此无法从可调用对象中返回元组以索引行和列。 从具有多轴选择的对象中获取值使用以下表示法(以.loc为例,但.iloc也适用)。...当执行 Index.union() 时,对于具有不同数据类型的索引,索引必须转换为一个公共数据类型。通常情况下,虽然不是绝对的,这个数据类型是对象数据类型。...唯一的例外是在整数和浮点数数据之间执行联合操作时。在这种情况下,整数值将被转换为浮点数。...在具有不同数据类型的索引之间执行Index.union()时,索引必须转换为公共数据类型。通常情况下,尽管不总是如此,这是对象数据类型。唯一的例外是在整数和浮点数据之间执行联合时。...有几种不同的方法。 设置索引 DataFrame 具有set_index()方法,该方法接受列名(用于常规Index)或列名列表(用于MultiIndex)。

    25210

    Pandas 2.2 中文官方教程和指南(十·一)

    解析具有混合时区的 CSV pandas 无法原生表示具有混合时区的列或索引。...类型推断是一件很重要的事情。如果一个列可以被强制转换为整数类型而不改变内容,解析器将这样做。任何非数字列将与其他 pandas 对象一样以对象 dtype 传递。...这对于具有前导零的数值文本数据非常有用。默认情况下,数值列会转换为数值类型,前导零会丢失。为了避免这种情况,我们可以将这些列转换为字符串。...转换是逐个单元格应用的,而不是整个列,因此不能保证数组 dtype。例如,具有缺失值的整数列无法转换为具有整数 dtype 的数组,因为 NaN 严格是浮点数。...这些类型的存储一旦写入就不可追加(尽管您可以简单地删除它们并重新写入)。它们也不可查询;必须完全检索它们。它们也不支持具有非唯一列名的数据框。

    35000

    Pandas图鉴(三):DataFrames

    MultiIndex 我们将拆分成四个部分,依次呈现~建议关注和星标@公众号:数据STUDIO,精彩内容等你来~ Part 3....下一个选择是用NumPy向量的dict或二维NumPy数组构造一个DataFrame: 请注意第二种情况下,人口值是如何被转换为浮点数的。实际上,这发生在构建NumPy数组的早期。...要想从中得到一个标量值,你可以使用: float(s)或更通用的s.item(),都会引发ValueError,除非系列中正好有一个值。...注意:要小心,如果第二个表有重复的索引值,你会在结果中出现重复的索引值,即使左表的索引是唯一的 有时,连接的DataFrame有相同名称的列。...要将其转换为宽格式,请使用df.pivot: 这条命令抛弃了与操作无关的东西(即索引和价格列),并将所要求的三列信息转换为长格式,将客户名称放入结果的索引中,将产品名称放入其列中,将销售数量放入其 "

    44420

    Pandas 2.2 中文官方教程和指南(十·二)

    这些是以表中总行数为单位的。 注意 如果查询表达式具有未知变量引用,则 select 将引发 ValueError。通常,这意味着您正在尝试选择一个不是数据列的列。...如果在列表的位置使用None,那么该表将具有给定 DataFrame 的其余未指定的列。参数selector定义了哪个表是选择器表(你可以从中进行查询)。...几个注意事项: 该格式不会为 DataFrame 写入 Index 或 MultiIndex,如果提供了非默认的索引,则会引发错误。...解析具有混合时区的 CSV pandas 无法本地表示具有混合时区的列或索引。...类型推断是一件很重要的事情。如果可以将列强制转换为整数 dtype 而不改变内容,则解析器将这样做。任何非数字列将像其他 pandas 对象一样以 object dtype 传递。

    35000
    领券