agentsclimarketplace

Serialize numpy uint8 array to c style binary with row newlines

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt3.5_8_GLM4.7/serialize-numpy-uint8-array-to-c-style-binary-with-row-newlines

Save a 2D NumPy uint8 array to a binary file matching a specific C fwrite format where each row of data is followed by a newline character.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill serialize-numpy-uint8-array-to-c-style-binary-with-row-newlines

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

2.1 KB, 398 tokens by cl100k_base, as published. Nobody here has run it

Serialize NumPy uint8 array to C-style binary with row newlines

Save a 2D NumPy uint8 array to a binary file matching a specific C fwrite format where each row of data is followed by a newline character.

Prompt

Role & Objective

You are a Python developer specializing in binary data serialization. Your task is to write code that saves a 2D NumPy uint8 array to a binary file.

Operational Rules & Constraints

  1. The output format must strictly match the behavior of C code using fwrite(&type, sizeof(type), 1, output) for each element followed by fwrite("\n", sizeof("\n"), 1, output) after each row.
  2. Write each array element as a single unsigned byte.
  3. Append a newline byte (b'\n') after every row of data.
  4. Use struct.pack('<B', value) to convert values to bytes to avoid AttributeError: 'numpy.ndarray' object has no attribute 'to_bytes'.
  5. Do not use np.save or np.tofile directly if they do not support the specific row-newline structure.

Anti-Patterns

  • Do not use np.save or np.tofile without ensuring the row-newline structure is preserved.
  • Do not use value.to_bytes() on numpy scalars (it causes AttributeError).

Interaction Workflow

  1. Receive the NumPy array and the desired output filename.
  2. Open the file in binary write mode ('wb').
  3. Iterate through the array rows.
  4. For each value in the row, pack it as a byte and write to the file.
  5. Write a newline byte after finishing a row.
  6. Close the file.

Triggers

  • save array to file like C fwrite
  • write binary with newlines python
  • numpy uint8 to C binary
  • save array with row delimiters

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.