python - 在df pandas中将数字AB分开到A和B
问题描述
我有一个 df,其中一些数据放在一些字节中。我的问题是,在框架内为切换功能保留了两个位,这对我来说无关紧要,但它会影响我任务的最终结果。
字节帧如下所示:
Start bit 0 1 2 3 4 5 6 7
0 A A A A A A A A
8 A A
16 B B B B B B B B
24 B B C C
C represents the toggle
我的 df 看起来像这样:
A A B B
BA 00 11 02
BA 00 11 02
BA 00 11 42
BA 00 11 42
BA 00 11 82
BA 00 11 82
BA 00 11 C2
BA 00 11 C2
BA 00 11 02
BA 00 11 02
我可以从 B 看到第二个字节的第一部分是循环的,这意味着第二个数字是切换。我猜还是我错了?之后,这个数字 (2) 在我的 df 中变为 1,然后变为 0。
有没有一种方法可以转换、分离或消除第二个数字,或者只取第一个数字(本例为 0)。例如。02 --> 0 和 2 只取 0。我的 df 之后是一个与 0 不同的数字,但 0、4、8 和 C 是连续的,不管怎样,2 也稍后变为 1,然后是 0。:)
解决方案
对于那些寻找答案的人,我咨询了我的枕头,我们同意尝试以下实际可行的方法:
所以在把这样的字节放在一起之后:
df['A'] = df.iloc[:,1] + '' + df.iloc[:,0] #Dominant byte is the second position
df['B'] = df.iloc[:,3] + '' + df.iloc[:,2]
输出:
A B
00BA 0211
00BA 0211
00BA 4211
00BA 4211
00BA 8211
00BA 8211
00BA C211
00BA C211
00BA 0211
00BA 0211
我做了以下事情:
df['B'] = df['B'].str[1:] #Only take the last three digits of the array
输出:
A B
00BA 211
00BA 211
00BA 211
00BA 211
00BA 211
00BA 211
00BA 211
00BA 211
00BA 211
00BA 211
推荐阅读
- javascript - D3在x和y轴上的刷牙和抚摸问题
- css - 设置模态对话框的高度
- google-bigquery - BigQuery:根据着陆页重新创建 GA 细分 - 指标不一致
- c - 无效表达式回调函数的使用无效
- dart - 如何在 Flutter 的单独页面中处理 _googleSignIn.disconnect()(Google 退出)?
- javascript - 将事件侦听器状态作为道具传递
- reactjs - 每个视图中的一个组件,但具有不同的类名
- git - Travis 错误存储库无法从远程存储库中读取
- sql - SQL query : Need to display the list of orders made by clients ordered by the date of the first order of a client
- javascript - JavaScript:Selenium:如何获取待处理的 xhr 请求的总数?