小编Seb*_*bMa的帖子

ValueError: 在带有来自 MatLab h5 文件的 pandas.read_hdf 的 HDF5 文件中没有数据集

我ValueError: No dataset in HDF5 file.在使用时得到一个:

In [1]: import pandas as pda

In [2]: store = pda.read_hdf('X.h5')
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-1-72e9d80a2c5b> in <module>()
----> 1 store = pda.read_hdf('X.h5')

/usr/local/miniconda3/envs/tensorFlow-GPU/lib/python3.6/site-packages/pandas/io/pytables.py in read_hdf(path_or_buf, key, mode, **kwargs)
    356             groups = store.groups()
    357             if len(groups) == 0:
--> 358                 raise ValueError('No dataset in HDF5 file.')
    359             candidate_only_group = groups[0]
    360

ValueError: No dataset in HDF5 file.
Run Code Online (Sandbox Code Playgroud)

h5dump 显示:

$ h5dump -n X.h5
HDF5 "X.h5" {
FILE_CONTENTS {
 group …
Run Code Online (Sandbox Code Playgroud)

python matlab hdf5 h5py pandas

7
推荐指数
0
解决办法
4570
查看次数

为什么我的熊猫数据框选择的形状是错误的

我有一个名为dfwhere df.shapeis (53, 80)where 索引和列都存在的 Pandas DataFrame int。

如果我像这样选择第一行,我会得到:

df.loc[0].shape
(80,)
Run Code Online (Sandbox Code Playgroud)

代替 :

(1,80)
Run Code Online (Sandbox Code Playgroud)

但是然后df.loc[0:0].shape或df[0:1].shape两者都显示正确的形状。

python shape slice dataframe pandas

5
推荐指数
1
解决办法
2898
查看次数

如何从命令行解析rdf格式文件

我想解析install.rdf内部文件uBlock0.firefox-legacy.xpi文件。

我想要得到的em:id,em:name,em:version,em:description并em:homepageURL从install.rdf这样的文件:

em:id           uBlock0@raymondhill.net
em:name         uBlock Origin
em:version      1.16.4.10
em:description  Finally, an efficient blocker. Easy on CPU and memory.
em:homepageURL  https://github.com/gorhill/uBlock
Run Code Online (Sandbox Code Playgroud)

编辑1:xmllint无法解析install.rdf文件:

em:id           uBlock0@raymondhill.net
em:name         uBlock Origin
em:version      1.16.4.10
em:description  Finally, an efficient blocker. Easy on CPU and memory.
em:homepageURL  https://github.com/gorhill/uBlock
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点 ?

bash awk rdf

3
推荐指数
1
解决办法
112
查看次数

如何在powershell中检测Linux或macOS或Windows?

我uname -s在 bash 脚本中使用来确定操作系统,当它在 Linux、macOS 或 Windows 上运行时,它会返回 Linux、Darwin 或 MINGW64_NT...。

EDIT0 :我希望我的$PROFILE脚本能够检测操作系统是否在带有 PS 的 Windows(版本可能低于 6)或带有 PSv>=6 的 Linux 上运行。

我在 powershell 中找到了这个:

PS> [System.Environment]::OSVersion.Platform
Run Code Online (Sandbox Code Playgroud)

在 Linux 上,它返回Unix,在 64 位 Windows 上,它返回Win32NT.

我没有可用的 macOS(还没有:)),所以我不知道它在 macOS 上实际返回什么。

UnixEDIT1:此方法在 Windows32b 和 Windows64b之间似乎没有区别Linux。

还有哪些其他方法可以检测 powershell 5.1 中的操作系统?

powershell uname platform-detection

3
推荐指数
1
解决办法
5436
查看次数

不能将$ @的所有参数与sh -c一起使用

在脚本中,我有一个sh -c涉及的命令,$@但似乎只考虑了的第一项$@:

$ set -- --no-resume-playback https://www.facebook.com/TBN/videos/1580372468665943/
$ echo "$@"
--no-resume-playback https://www.facebook.com/TBN/videos/1580372468665943/
$ sh -c "echo $@"
--no-resume-playback
$ sh -c "echo ${@[*]}"
bash: echo ${@[*]}: bad substitution
Run Code Online (Sandbox Code Playgroud)

编辑1:如果我将$@数组复制到一个变量,它的工作原理:

$ args=("$@")
$ sh -c "echo ${args[*]}"
--no-resume-playback https://www.facebook.com/TBN/videos/1580372468665943/
Run Code Online (Sandbox Code Playgroud)

如何$@在sh -c通话中使用所有参数?

bash command-line-arguments

2
推荐指数
1
解决办法
101
查看次数

如何在 powershell 中执行 ls -d

我需要列出现有目录而不将文件列出到其中:

PS C:\Users\myHomeDIR> cat .\toto.txt
.\.config
C:\DA FI
PS C:\Users\myHomeDIR> cat .\toto.txt | dir | % FullName
C:\Users\myHomeDIR\.config\scoop
dir : Cannot find path 'C:\DA FI' because it does not exist.
At line:1 char:18
+ cat .\toto.txt | dir | % FullName
+                  ~~~
    + CategoryInfo          : ObjectNotFound: (C:\DA FI:String) [Get-ChildItem], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

PS C:\Users\myHomeDIR> 
Run Code Online (Sandbox Code Playgroud)

我期望这个输出(就像 LINUXls -d那样):

C:\Users\myHomeDIR\.config
dir : Cannot find path 'C:\DA FI' because it does not exist.
At line:1 char:18
+ cat …
Run Code Online (Sandbox Code Playgroud)

powershell ls equivalent

2
推荐指数
1
解决办法
67
查看次数

无法从 $PSVersionTable 中提取 PSVersion 字符串

我有以下输出:

PS> $PSVersionTable

Name                           Value
----                           -----
CLRVersion                     2.0.50727.8806
BuildVersion                   6.1.7601.17514
PSVersion                      2.0
WSManStackVersion              2.0
PSCompatibleVersions           {1.0, 2.0}
SerializationVersion           1.1.0.1
PSRemotingProtocolVersion      2.1
Run Code Online (Sandbox Code Playgroud)

我想将PSVersion像这样的字符串值获取到变量中:2.0

所以我尝试了这个,但这不是我想要的:

PS> $PSVersionTable.PSVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
2      0      -1     -1
Run Code Online (Sandbox Code Playgroud)

和这些命令:

EDIT0:我复制并粘贴了错误的行,但字符串连接仍然不起作用:

PS> $myVariable = $PSVersionTable.PSVersion.Major + "." + $PSVersionTable.PSVersion.Minor
Cannot convert value "." to type "System.Int32". Error: "Input string was not in a correct format."
At line:1 char:48
+ $myVariable = $PSVersionTable.PSVersion.Major + <<<<  "." + $PSVersionTable.PSVersion.Minor
    + …
Run Code Online (Sandbox Code Playgroud)

string powershell

0
推荐指数
1
解决办法
1526
查看次数

numpy Matlab相当于`bitxor`之间的不同大小的矢量没有循环

这是matlab代码:

A=[1,2,3,4];
B=[5,3];
bitxor(A,B')
Run Code Online (Sandbox Code Playgroud)

它返回:

ans =

     4     7     6     1
     2     1     0     7
Run Code Online (Sandbox Code Playgroud)

如何在没有循环的情况下使用numpy?

python matlab numpy xor

-1
推荐指数
1
解决办法
76
查看次数